无法创建模型类的构造函数并且无法将对象引用设置为对象错误的实例

时间:2014-09-04 09:06:50

标签: asp.net-mvc-4

这是我的模特:

public class UserDetails
{
            public string UserName { get; set; }
            public virtual Category Category { get; set; }
}

这是我的查询以获取用户详细信息以及类别:

var data = (from temp in context.UserDetails.Include("Category") select temp).OrderBy(c => c.UserId); 

这是我在控制器上访问的方式:

List<UserDetails> staffDetails = staffBal.fetchStaffDetails();
      var categoryModel = new CategoryModel();
                Data = staffDetails.Select(x =>
                {
                    var userDetailModel = new UserDetailsModel();
                      userDetailModel.UserId = x.UserId;
                    userDetailModel.FName = x.FName;
   categoryModel.CategoryName = x.Category.Name;//i am getting error on this line.object reference not set to instance of object

任何人都可以告诉我什么是解决方案???

1 个答案:

答案 0 :(得分:1)

您在评论中说:for some records it is coming null for some records it is not null表示x.Category为空。因此,任何访问x.Category.Name的尝试都将失败。将行更改为:

categoryModel.CategoryName = x.Category == null ? "" : x.Category.Name;