gpt4 book ai didi

.net - 为什么 .NET 中没有 ArgumentEmptyException?

转载 作者:行者123 更新时间:2023-12-04 15:57:49 24 4
gpt4 key购买 nike

我开始觉得我做错了什么。我的意思是他们最终确实放置了 System.String.IsNullOrWhitespace 但没有 ArgumentEmptyException 类。

        public FilterItem(string name, IEnumerable<string> extensions)
{
if (string.IsNullOrWhiteSpace(name))
{
throw new ArgumentNullException("name");
}
if (extensions == null)
{
throw new ArgumentNullException("extensions");
}
if (extensions.Count() == 0)
{
throw new ArgumentOutOfRangeException("extensions");
}

this.Name = name;
this.Extensions = extensions;
}

抛出 ArgumentOutOfRangeException 感觉不自然。在我看来,ArgumentException 的实例也太笼统了。

我很容易创建一个新的异常类,以这种方式调用它并结束它。让我感到困扰的是它不在 BCL/FCL 中,我开始认为有充分的理由不拥有它。

应该有吗?

最佳答案

就个人而言,我只会提出 ArgumentException并在消息中放入一些信息。该消息只是为了帮助您在开发过程中诊断问题——实际上没有任何情况您希望在已完成的系统中捕获该错误,因此没有理由将其设置为唯一 catch -有能力的。

关于.net - 为什么 .NET 中没有 ArgumentEmptyException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2952820/

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