帮助简单的linq查询

时间:2009-08-05 15:17:39

标签: linq-to-sql

我的表格包含以下列:

用户(UserID,GroupID,userName,userType,...)

我需要这样做:

SELECT GroupID
FROM Users
WHERE userID = @userID AND username = @username and usertype = @usertype.

我准备好了我的DataContext,我的LINQ查询指南会很棒!

5 个答案:

答案 0 :(得分:0)

您应该下载LinqPad并使用它连接到您的数据源。这将真正帮助您开始使用LINQ。我还建议购买完整版(19美元)的LinqPad b / c,intellisense可以在一开始真正帮助你

答案 1 :(得分:0)

int UserID = [code to get userID],
    Usertype=[code to get usertype];
string Username=[code to get username];

from u in Users
 where u.userID = UserID
  && username=Username
  && usertype=Usertype
select u.GrupID;

答案 2 :(得分:0)

...大致

int ID = 1;
string uname = "whatever";
string utype  = "whatever"

User myUser = (from u in Users where u.userID == ID && u.username == uname && u.usertype == utype select u).SingleOrDefault();

但是,抓住linqpad

答案 3 :(得分:0)

var result = from u in users
             where u.UserID == userID
             && u.UserName == userName
             select u.GroupID

答案 4 :(得分:0)

我不确定您是否只需要一个结果或列表。我假设因为您正在搜索用户ID,所以只会找到一个。

string userID = "Your user ID here";
string userName = "Your username here";
string userType = "Your usertype here";
var groupID = (from user in dataContext.Users
               where user.UserID == userID &&
                     user.UserName == userName &&
                     user.UserType == userType
               select user.GroupID).FirstOrDefault();

如果你想要一个匹配的所有行的列表,你也可以在最后做一个ToList()。

我没有对代码进行测试,因此它可能会有一些拼写错误,而且我不确定你的dbml中的变量名是什么。