gpt4 book ai didi

c# - 忽略嵌套属性的 "Object reference not set to an instance of an object"错误的最佳方法是什么?

转载 作者:太空狗 更新时间:2023-10-29 23:09:00 26 4
gpt4 key购买 nike

我遇到过很多情况,我想按照以下方式显示一些东西

@ev.Event.Instructor.Name

但是 instructor 属性允许为 null。在那些情况下,“对象引用未设置为对象的实例”。错误被抛出,但我想忽略它并且没有返回任何东西..

有没有比到处创建大量三元表达式来检查 null 更好的方法来处理这个问题?

等效的 php 表达式是

@$ev.Event.Instructor.Name

我一直在将一些 webforms View 转换为 MVC,等效的 Eval 语句会忽略空引用错误。

澄清一下:@ev 属性来自 linq 查询,也有一些情况

@ev.mainContact.FirstName @ev.mainContact.LastName
@ev.mainContact.Company.Name

不仅 mainContact 可以为 null,而且 mainContact 的公司也可以为 null。使用三元检查 null 来选择每个属性似乎是一个同样糟糕的解决方案。

最佳答案

一种方法是向事件添加另一个属性:

public string InstructorName
{
get { return Instructor == null ? string.Empty : Instructor.Name; }
}

关于c# - 忽略嵌套属性的 "Object reference not set to an instance of an object"错误的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14046875/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com