例如,假設我想看看用戶是否存在在我的數據庫:如果這個結果帶來> 0的項目,則該用戶存在,正確如何將此SQL語句轉換爲Linq-to-SQL方法?
Select * from Users where inputID = Users.ID
呢?
我該如何使用純Linq-to-SQL類來做類似的事情?
例如,假設我想看看用戶是否存在在我的數據庫:如果這個結果帶來> 0的項目,則該用戶存在,正確如何將此SQL語句轉換爲Linq-to-SQL方法?
Select * from Users where inputID = Users.ID
呢?
我該如何使用純Linq-to-SQL類來做類似的事情?
dbContext.Users.Any(x => x.ID == inputID)
var user = dbContext.GetTable<User>().SingleOrDefault(u => u.ID == inputID);
bool userExists = user != null;
將從數據庫中讀取匹配的用戶,如果你只是要檢查所有腦幹你可以這樣做:
int matchingUsers = dbContext.GetTable<User>().Count(u => u.ID == inputID);
bool userExists = matchingUsers > 0;
或
bool userExists = dbContext.GetTable<User>().Any(u => u.ID == inputID);
我從來沒有以前見過'GetTable <>'方法。 'dbContext.GetTable
@Deniz Dogan - GetTable在DataContext類中定義,如果您使用linq2sql設計器創建實體類,那麼它將創建DataContext的子類併爲每個db-mapped類型定義一個屬性。所以在這種情況下,它會看起來像'IQueryable
啊,我明白了。所以這兩種方式基本相同。涼。 :) – 2010-06-17 15:24:24
+1。這導致了最高效的數據庫查詢。 – Steven 2010-06-17 15:15:50
謝謝你這個漂亮的作品! :) – 2010-06-17 15:22:44