2011-06-10 16 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 
相關問題