为什么我的代码行显示错误
var searchUser = from accnt_user in dbo.Accounts
where accnt_user == txtUser.Text &&
accnt_Pass == txtPassword.Text
select accnt_user;
错误2当前上下文中不存在名称“accnt_Pass”C:\ Users \ John \ documents \ visual studio 2010 \ Projects \ PAS \ PAS \ Login.cs 39 66 PAS
错误1当前上下文中不存在名称“dbo”C:\ Users \ John \ documents \ visual studio 2010 \ Projects \ PAS \ PAS \ Login.cs 38 49 PAS
但我已将我的datacontext链接到它
DataClasses1DataContext myDbContext = new DataClasses1DataContext(dbPath);
我的DataClasses1DataContext已经有了这行代码
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Accounts")]
public partial class Account : INotifyPropertyChanging, INotifyPropertyChanged
注意:我没有在datacontext中添加所有代码,因为它很长
答案 0 :(得分:2)
尝试这样,因为accnt_user
这将是Accounts的对象,因此您需要使用.
operatorr
var searchUser = from accnt_user in Accounts
where accnt_user.accnt_user== txtUser.Text &&
accnt_user.accnt_pass== txtPassword.Text
select accnt_user;
答案 1 :(得分:0)
您没有在查询中使用上下文。此外,所有列名必须以为源表或连接定义的别名作为前缀(与SQL不同,如果列在查询中的一组表或视图中是唯一的,则可以省略前缀。)
将您的代码更改为:
using(DataClasses1DataContext myDbContext = new DataClasses1DataContext(dbPath))
{
var searchUser = from user in myDbContext.Accounts
where user.accnt_user == txtUser.Text &&
user.accnt_Pass == txtPassword.Text
select user;
// do something with searchUser
}
这基本上等同于这个SQL:
select user.*
from dbo.Accounts user
where user.accnt_user = @user and user.accnt_pass = @pass