2009-07-22 274 views
0

如果我在我的表中有一個字段需要驗證存在,我如何使用contains方法來確定它是否存在。linq to sql「Contains」

我本來以爲contains方法只需要在一個字符串,但它似乎對我的整個LINQ數據對象

+1

如果已經給出的答案不是您要查找的內容,您將不得不澄清一下您的問題 – jeroenh 2009-07-22 10:29:42

回答

2

ContainsIEnumerable的擴展方法,用於確定給定對象是否存在於枚舉中。這不是你想要的。

我猜你有一個LINQ查詢是這樣的:

IEnumerable<string> productNames = from p in db.Products select p.ProductName; 

現在要驗證ProductName領域實際存在,以避免運行時錯誤。實際上沒有必要檢查。嘗試用不存在的字段替換p.ProductName。編譯器會抱怨。

當然,這假設實際的數據庫模式與用於生成數據庫類的MSLinqToSQLGenerator匹配。

0

不知道如何使用LINQ做,但你可以這樣做:

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE _NAME ='MyTable' and COLUMN _NAME='MyColumn' 

然後基於從查詢返回的計數,您將知道該列是否存在。