提问人:Mazza 提问时间:3/8/2023 更新时间:3/8/2023 访问量:132
c# 9 可以为 null 的引用类型 [已关闭]
c# 9 Nullable reference types [closed]
问:
在 c# 9 中,使用 Nullable 引用类型的新功能,我发现自己在每个类属性类型上都放置了“?”以打开警告,然后在代码中将 if != null 放在外面以避免 null 引用(这很好)。 但我想知道,到处发送垃圾邮件“?”是对的吗?
假设我有一个类,它表示具有非可选外键的数据库记录:
public int UserId { get; set; }
public virtual User User { get; set; }
我希望虚拟属性始终不为空(因为它是由实体框架实例化的),所以我不想让它为空以删除类中的警告,而是将其值初始化为“null!然后,我应该将使用此属性的代码包装在 try catch 块中,以便在实体框架无法按预期工作时捕获异常。
你觉得怎么样?垃圾邮件“?”并始终重复 if != null 是否更安全?
答: 暂无答案
评论
required
= null!