2011-06-10 48 views
0

我有一个数据集oDsData。在此我有一列名为SL_NO\\W的列。如何使用LinQ获取列名称中具有“//”的数据集中列的值?

我用下面的代码

var f = oDsData.AsEnumerable(); 
var x = from c in f 
    select c.Field<int>("[SL_NO\\W]").ToString() 
    .Substring(c.Field<int>("[SL_NO\\W]")-1, 1); 
if (x.Count() > 0) 
    {some code} 

虽然试图获得x.Count(),我得到的异常Column '[SL_NO\W]'不属于表Table1

任何人都可以帮助我,因为它非常重要。

问候, 尼

+1

你尝试无[]在你的列名中像c.Field(“SL_NO \ W”)。ToString()? – Akhil 2011-06-10 06:42:47

+0

是的,我确实尝试过使用这种方式。即使错误即将到来。 – 2011-06-13 03:31:52

回答

0

由于\是你要加倍或使​​用@(文本字符串)的特殊字符:

select c.Field<int>(@"[SL_NO\\W]").ToString() <-- @ before the string 

或者

select c.Field<int>("[SL_NO\\\\W]").ToString() <-- 4 means 2 
相关问题