是否有更简洁的方法将空字段设置为" N / A"?

时间:2017-11-15 21:04:07

标签: c#

我在视图中有5个以上的元素。有没有更简洁的方法来检查空值并设置值,如果它们保存在我的控制器之前?例如:

string FN = viewModel.FirstName;
if (String.IsNullOrEmpty(FN))
{
    FN = "N/A";
}
//copy and paste for lastname
//copy and paste for address
//etc

2 个答案:

答案 0 :(得分:1)

创建一个扩展方法:

static class Helper
{
       public static string NotApplicableIfNullOrEmpty(this string str) => String.IsNullOrEmpty(str) ? "N/A" : str;
}

然后执行以下操作:

string firstName = viewModel.FirstName.NotApplicableIfNullOrEmpty();
string lastName = viewModel.LastName.NotApplicableIfNullOrEmpty();
string address = viewModel.Address.NotApplicableIfNullOrEmpty();

答案 1 :(得分:0)

第一种也是最简单的方法是:使用三元运算符

string fristName = String.IsNullOrEmpty(viewModel.FirstName) ? "N/A" : viewModel.FirstName;

另一种选择是使用自定义模型绑定器: ASP.NET Model Binder