WCF服务LINQ登录用户的查询
本文关键字:查询 用户 登录 服务 LINQ WCF | 更新日期: 2023-09-27 18:11:25
我在应用程序中使用LINQ查询来登录用户。我想检查名为tbluser
的SQL Azure表,我正在使用生成的LINQ数据类来查询我的SQL Azure表。我已经成功地能够查询LINQ表tblAsset
来传递查询,其中*
或只需要一列。
我明白,要登录用户,我需要使用WHERE
检查用户名和密码,但我没能破解这个。
我已经尝试了以下代码:
public List<User> SigninUser(int uname, string pass)
{
DataClasses1DataContext context = new DataClasses1DataContext();
IEnumerable<User> result = (from a in context.Users
where (a.UserID==uname && a.Password==pass)
select new
{
a.UserID,
a.Password
}).ToList()
;
return result.ToList();
}
但是返回错误-
Cannot implicitly convert type 'System.Collections.Generic.List<AnonymousType#1>' to 'System.Collections.Generic.IEnumerable<MyService.User>'. An explicit conversion exists (are you missing a cast?)
创建一个匿名类型:
new
{
a.UserID,
a.Password
}
但是你的结果类型是:IEnumerable<User>
。
用:
代替IEnumerable<User>
IEnumerable<User> result = (from a in context.Users
where (a.UserID==uname && a.Password==pass)
select a).ToList();
或者更好:
IEnumerable<User> result = context.Users.Where(a => a.UserID==uname && a.Password==pass);
(感谢justMe和navk)