- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
假设我有一个类(class) Foo
具有复杂的属性 Bar
.然后,假设我在其他类中有一个如下所示的方法:
public void DoSomething(Foo foo)
{
if (foo == null)
throw new ArgumentNullException("foo");
if (foo.Bar == null)
throw new ArgumentNullException("bar");
}
ArgumentNullException
尽管严格来说,这里是合适的,
foo.Bar
在这种情况下不是一个论点吗?我
have read并且可以理解,抛出
NullReferenceException
是不合适的。手动。这是在告诉我我需要抽象吗?
public void DoSomething(Foo foo)
{
if (foo == null)
throw new ArgumentNullException("foo");
DoSomethingElse(foo.Bar);
}
private void DoSomethingElse(Bar bar)
{
if (bar == null)
throw new ArgumentNullException("bar");
}
ArgumentNullException
的“正确”用法吗? ?处理这种情况的常规方法是什么?
最佳答案
理想情况下,Foo
类将确保其 Bar
属性永远不会为空。如果那不可能,我会抛出 ArgumentException
在这种情况下,因为参数不为空,但它是无效的。
关于c# - 访问参数的属性时使用 ArgumentNullException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15099218/
这个问题在这里已经有了答案: Use of ArgumentNullException when accessing arguments' properties (1 个回答) 关闭 2 年前。 我
我有一个在管理控制台和服务器应用程序之间使用远程处理的 .NET 应用程序。 在运行时间特别长的远程调用期间,我会收到一条错误消息,如下所示。 我已将 Sponsor 添加到客户端以防止 Remoti
我有一个关于构造函数的语法和在构造函数中抛出异常的问题。 如何在调用 CreateAnotherOne() 之前为参数 b 抛出 ArgumentNullException 并像在第二个构造函数中那样
我试图将我的位图保存到 MemoryStream - 这段代码有什么问题?为什么它让我 argumentnullexception ? private void insertBarCodesToPDF
我在整个过程中都使用了这个代码模式,并且只在这个特定的属性中尝试为其赋值(即调用 setter)时抛出 ArgumentNullException。为null的对象是isLoggedInLock,因此
当有 null 值时抛出 ArgumentNullException() 是个好主意吗? This thread 没有提到在 null 上抛出的最明显的异常。 谢谢 最佳答案 ArgumentNull
假设我有一个类(class) Foo具有复杂的属性 Bar .然后,假设我在其他类中有一个如下所示的方法: public void DoSomething(Foo foo) { if (foo
我正在尝试编写 XUnit 测试来测试我的自定义验证器。验证器检查其他属性的值,该值指示已验证的属性是否应为 null 或具有值。但是,当我使用 TryValidateProperty 方法时,测试返
你好, 我有一个使用 sql express 本地数据库的程序。我希望能够使用该程序运行必要的脚本来更新该数据库。一个文本文件已作为嵌入式资源添加到项目(VS2010)中,该文件包含文本。但是它无法打
我正在开发 MVC 4 C# 互联网应用程序。 我有一个 MapLocationCompany 类和一个 MapLocation 类。我在每个 MapLocationCompany 对象之后都有一个
我注意到这段代码经常出现在我的构造函数中: if (someParam == null) throw new ArgumentNullException("someParam"); if (someO
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 8 年前。 Improve
所以我正在尝试更改 Windows 8 应用程序中的框架。我尝试按照 this page 上的教程进行操作,但我不断收到同样的错误。 我在线上收到 ArgumentNullException: fra
对于具有单个参数的构造函数,如果参数为 null/空,是否可以在构造函数内部抛出 ArgumentNullException?或者,它应该在实际使用参数的方法中抛出吗?谢谢。 最佳答案 是的,如果它是
假设我有一个方法将某种对象作为参数。现在说如果这个方法传递了一个空参数,这是一个 fatal error ,应该抛出一个异常。编写这样的代码对我来说是否值得(记住这是一个微不足道的例子): void
我正在尝试使用 Windows Azure PowerShell 模块来管理订阅。 我已经下载了我的证书(.publishsettings 文件)并使用 Import-AzurePublishSett
我有一个简单的方法,该方法从Web服务获取人员信息,并使用StringBuilder构建格式化的字符串。 public List Process(data) { List returnVal =
嗨,我有一个名为 Activity 的类, 在一个表单上,我将其对象数组创建为, Activity[] _actList; 然后这样做, List termsList = _actList.ToLi
我正在阅读 this post回答者提到他更喜欢 ArgumentNullException 而不是 NullReferenceException。 MSDN提到 NullReferenceExcep
当我尝试在 Xamarin Forms 中使用 XAML 创建内容 View 时,生成的代码隐藏会抛出此错误: System.ArgumentNullException: Value cannot b
我是一名优秀的程序员,十分优秀!