首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >等效速记

等效速记
EN

Stack Overflow用户
提问于 2011-04-19 04:33:08
回答 8查看 442关注 0票数 1

以下代码片段的缩写形式是什么?

代码语言:javascript
复制
if (strValue == ""){
    throw new Exception("Mandatory 'strValue' parameter empty");
}
EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2011-04-19 04:34:49

它可能尽可能地短,不能去掉空格和大括号(并且在这个过程中牺牲了可读性)。

至于正确性。这样可能会更好:

.NET 4.0:

代码语言:javascript
复制
if (string.IsNullOrWhiteSpace(strValue)){
    throw new ArgumentException("Mandatory 'strValue' parameter empty");
}

.NET < 4.0:

代码语言:javascript
复制
if (string.IsNullOrEmpty(strValue)){
    throw new ArgumentException("Mandatory 'strValue' parameter empty");
}

还要注意的是,简单地抛出Exception是不好的做法-如果存在一个异常类,最好从BCL中选择一个合适的异常类,或者如果没有一个异常类,则选择一个自定义的异常类。

票数 9
EN

Stack Overflow用户

发布于 2011-04-19 04:35:44

代码语言:javascript
复制
if(strValue=="")throw new Exception("Mandatory 'strValue' parameter empty");

您所能做的就是删除大括号和空格:)

票数 5
EN

Stack Overflow用户

发布于 2011-04-19 04:38:26

使用null检查,我认为您需要这样做,并使用ArgumentException:

代码语言:javascript
复制
ThrowIfNullOrEmpty(strValue, "strValue");

...

private void ThrowIfNullOrEmpty(string parameterValue, string parameterName)
{
    if String.IsNullorEmpty(parameterValue)
    {
        throw new ArgumentException("Mandatory 'strValue' parameter empty", 
                                    parameterName);
    }
}

显然,只有当您多次执行此操作时才有用。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5708551

复制
相关文章

相似问题

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