在 linq to sql 查询中获取 属性 之前检查空值
check for null before getting property in linq to sql query
我有一个看起来像这样的查询,如果没有 RegisteredInstructor,则会抛出错误。有没有办法解决这个问题或在 linq 查询期间进行检查?
viewModel.SpaceEvents = yogaSpace.YogaSpaceEvents.Where(j => j.EventDateTime >= DateTime.Now).Select(j => new EventResult
{
RegsiteredInstructorName = j.RegisteredInstructor.Name,
RegisteredInstructorId = j.RegisteredInstructor.RegisteredTeacherId,
RegisteredTeacherImage = j.RegisteredInstructor.RegisteredTeacherImage
}).ToList();
其中 RegisteredInstructor 是
public virtual Profile RegisteredInstructor { get; set; }
在我的 YogaSpaceEvents 实体中。
尝试 this.This 可以修复您的错误,检查 j.RegisteredInstructor
是否为 null。
viewModel.SpaceEvents = yogaSpace.YogaSpaceEvents
.Where(j => j.EventDateTime >= DateTime.Now)
.Select(j => new EventResult
{
RegsiteredInstructorName = j.RegisteredInstructor!= null?j.RegisteredInstructor.Name:"",
RegisteredInstructorId = j.RegisteredInstructor!= null?j.RegisteredInstructor.RegisteredTeacherId:0,
RegisteredTeacherImage = j.RegisteredInstructor!= null?j.RegisteredInstructor.RegisteredTeacherImage:""
}).ToList();
我有一个看起来像这样的查询,如果没有 RegisteredInstructor,则会抛出错误。有没有办法解决这个问题或在 linq 查询期间进行检查?
viewModel.SpaceEvents = yogaSpace.YogaSpaceEvents.Where(j => j.EventDateTime >= DateTime.Now).Select(j => new EventResult
{
RegsiteredInstructorName = j.RegisteredInstructor.Name,
RegisteredInstructorId = j.RegisteredInstructor.RegisteredTeacherId,
RegisteredTeacherImage = j.RegisteredInstructor.RegisteredTeacherImage
}).ToList();
其中 RegisteredInstructor 是
public virtual Profile RegisteredInstructor { get; set; }
在我的 YogaSpaceEvents 实体中。
尝试 this.This 可以修复您的错误,检查 j.RegisteredInstructor
是否为 null。
viewModel.SpaceEvents = yogaSpace.YogaSpaceEvents
.Where(j => j.EventDateTime >= DateTime.Now)
.Select(j => new EventResult
{
RegsiteredInstructorName = j.RegisteredInstructor!= null?j.RegisteredInstructor.Name:"",
RegisteredInstructorId = j.RegisteredInstructor!= null?j.RegisteredInstructor.RegisteredTeacherId:0,
RegisteredTeacherImage = j.RegisteredInstructor!= null?j.RegisteredInstructor.RegisteredTeacherImage:""
}).ToList();