我在我的网络应用程序中多次使用此代码,出于某种原因,这部分不断返回错误:Object reference not set to an instance of an object.

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;
                }

我的数据库中只有一个条目都名为“John”。我已经测试过 null 但它一直给我 string user = lgn.Email; 的错误

最佳答案

我假设 lgnnull ,因为 usr maye 已返回默认值 null 并将其分配给 lgn 。因此,您可以检查 lgn 不是 null :

if (lgn != null && !string.IsNullOrWhiteSpace(lgn.Email) {
   user = lgn.Email;
}

user = "User not found/Email has not been set";

10-07 19:54