2014-04-24 168 views
-4

我有一个问题与C#属性检查null时引发异常。 我无权访问包含导致此问题的属性的类,否则这将是一个简单的修复方法。处理属性值,抛出异常

基本上,我有一个包含Imported_Class的视图模型。 Imported_Class在共享库中用方法填充。当一个来自Imported_Class的属性抛出一个异常而不是返回null或一个值时,我遇到了一个问题。

它不会崩溃的应用程序,我只是无法检查空,以防止任何可能的错误。

我可以将该属性分配给一个局部变量,包装在try/catch中以捕获错误,但是我发现对于一个属性来说太笨重了。

我的问题的例子:

public string getPropertyA 
{ 
    get { return Imported_Class.PropertyA; /* throws exception */ } 
} 
+0

请不要只问我们为你解决问题。告诉我们你是如何试图自己解决问题的,然后向我们展示结果是什么,并告诉我们为什么你觉得它不起作用。请参阅“[您尝试过什么?](http://whathaveyoutried.com/)”,以获得一篇您最近需要阅读的优秀文章。 –

+0

没有任何选项,要么让异常炸毁你的电脑,要么抓住它。 – Aybe

+1

“例外”可能是任何事情。什么是例外? – tnw

回答

0

如果Imported_Class不提供公开的方式让你得到属性之前测试的条件,那么我不认为有任何其他的选择,而不是将调用包装在try/catch块中。

+0

我希望有一种方法可以避免这种情况,但是我想我不得不坚持下去。谢谢你的快速反应! – Bill