首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在ViewModels中处理/解析NullReferenceExceptions

在ViewModels中处理/解析NullReferenceExceptions
EN

Stack Overflow用户
提问于 2011-04-29 01:30:25
回答 1查看 48关注 0票数 1

我有一个使用MVVM light框架的WPF/C#应用程序。然而,当它呈现一些页面时,在视图初始化之前,会访问其中一个viewModels中的几个字段,这会导致NREs。

我一直在使用一个简单的解决方案,即在getters中添加类似于if (obj==null) return new object();的语句,这似乎可以修复NRE,但对我来说,这似乎不是一个很好的解决方案。有没有更好的方法来解决这种情况?

EN

Stack Overflow用户

回答已采纳

发布于 2011-04-29 01:38:33

您所描述的解决方案看起来像Null Object design pattern。如果你不想为每个getter创建新的对象,你可以使用单例实例:

代码语言:javascript
运行
复制
public sealed class NullObject {
    public static readonly NullObject Default = new NullObject();
    public static object GetNotNull( object value ) {
        return object.ReferenceEquals( value, null ) ? (object)Default : value;
    }
}
//....
private object someField;
public object SomeProperty {
    get { return NullObject.GetNotNull( this.someField ); }
}
票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5822648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档