C# EDMX对象引用未设置为对象的实例
我在我的web应用程序中多次使用此代码,出于某种原因,此部分不断返回错误:C# EDMX对象引用未设置为对象的实例,c#,.net,sql-server,entity-framework,edmx,C#,.net,Sql Server,Entity Framework,Edmx,我在我的web应用程序中多次使用此代码,出于某种原因,此部分不断返回错误:对象引用未设置为对象的实例。 string username = "John"; using (TicketsEntities dbc = new TicketsEntities()) { var usr = from cs in dbc.Logins where cs.FullName =
对象引用未设置为对象的实例。
string username = "John";
using (TicketsEntities dbc = new TicketsEntities())
{
var usr = from cs in dbc.Logins
where cs.FullName == username
select cs;
DataModel.Login lgn = usr.SingleOrDefault<DataModel.Login>();
string user = lgn.Email;
lbler.Text = user;
}
string username=“John”;
使用(ticketsenties dbc=new ticketsenties())
{
var usr=来自dbc.Logins中的cs
其中cs.FullName==用户名
选择cs;
DataModel.Login lgn=usr.SingleOrDefault();
字符串user=lgn.Email;
lbler.Text=用户;
}
“我的数据库”中只有一个条目的名称均为“John”。我已经测试了null,但它一直在
stringuser=lgn.Email上给我错误
我假设lgn
为null
,因为usr
可能已返回默认值null
,并将其分配给lgn
。因此,您可以检查lgn
是否为null
:
if (lgn != null && !string.IsNullOrWhiteSpace(lgn.Email) {
user = lgn.Email;
}
user = "User not found/Email has not been set";
您确定大小写相同,并且没有带
John
的空格吗?FullName
的数据类型是什么,如果是char
,则结尾可能有空格。谢谢。尽管字符串永远不应该为空(因为用户名从AD身份验证读取),但如果我这样做,请检查它是否工作。但是如果我删除if语句,它就会抛出异常。