C# 如何在实体框架中从表中获取一个值
我只需要从表中获取一个值,我这样做:C# 如何在实体框架中从表中获取一个值,c#,wpf,entity-framework,C#,Wpf,Entity Framework,我只需要从表中获取一个值,我这样做: public DBEntities db = new DBEntities(); public ObservableCollection<Users> GetUsers { get { return db.Users.Local; } } public WindowViewModel(Label userName) { var us = GetUsers.Where(u => u.Id == 1) as Users;
public DBEntities db = new DBEntities();
public ObservableCollection<Users> GetUsers
{
get { return db.Users.Local; }
}
public WindowViewModel(Label userName)
{
var us = GetUsers.Where(u => u.Id == 1) as Users;
userName = us.Name.ToString();
}
//returns an enumeration of users filtered by the given expression
Public IEnumerable<User> GetUsers(Expression<Func<User, bool>> expression)
{
return db.Users.Where(expression);
}
// returns the first occurency of a user filtered by the given expression
Public User GetUser(Expression<Func<User, bool>> expression)
{
return db.Users.FirstOrDefault(expression);
}
public DBEntities db=new DBEntities();
公共ObservableCollection GetUsers
{
获取{return db.Users.Local;}
}
公共窗口视图模型(标签用户名)
{
var us=GetUsers.Where(u=>u.Id==1)作为用户;
userName=us.Name.ToString();
}
但是它没有解决错误:附加信息:对象引用没有指向对象的实例。让我给你一些指导 不要使用属性获取数据,请使用方法 像这样:
public DBEntities db = new DBEntities();
public ObservableCollection<Users> GetUsers
{
get { return db.Users.Local; }
}
public WindowViewModel(Label userName)
{
var us = GetUsers.Where(u => u.Id == 1) as Users;
userName = us.Name.ToString();
}
//returns an enumeration of users filtered by the given expression
Public IEnumerable<User> GetUsers(Expression<Func<User, bool>> expression)
{
return db.Users.Where(expression);
}
// returns the first occurency of a user filtered by the given expression
Public User GetUser(Expression<Func<User, bool>> expression)
{
return db.Users.FirstOrDefault(expression);
}
听起来像是一个空引用异常,也许本文会有所帮助;你需要一些基本的LINQ知识。一些有用的链接----
作为用户
应该是.FirstOrDefault()代码>谢谢你的回复。在我看来,还有一个问题,第二个方法再次返回相同的错误:附加信息:对对象的引用没有指向对象的实例。这可以帮助您->