View Model int中的C#解析错误?到int

时间:2017-04-25 15:48:06

标签: c# asp.net

我目前正在使用C#6开发应用程序。我想做一个非常酷的技巧,但遗憾的是它并没有像我想象的那样工作,只会导致Null Exception,如果属性是空的:

public string CoolId {get;set;} // e.g. 1,5,3,7

public List<int> CoolIdList => WebUtility.HtmlDecode(CoolId).Split(',').Select(Int32.Parse).ToList();

如果属性CoolId具有诸如&#34; 1,5,3,7&#34;如果它为空则有一个空例外。

如果我愿意的话

public List<int?> CoolIdList => WebUtility.HtmlDecode(CoolId).Split(',').Select(Int32.Parse).ToList();

......我马上得到了一个例外。

你知道如何解决这个问题吗?

谢谢:)

2 个答案:

答案 0 :(得分:4)

你需要

  1. 检查是否为空。
  2. 拆分时删除空条目。
  3. WebUtility.HtmlDecode(CoolId ?? string.Empty)
              .Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
    

答案 1 :(得分:1)

否则你可以实现split的扩展方法,它也处理空字符串