我目前正在使用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具有诸如“ 1、5、3、7”之类的值,则为空;如果为空,则存在Null异常。

如果我愿意

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


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

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

谢谢 :)

最佳答案

你需要


检查是否为空。
拆分时删除空条目。




WebUtility.HtmlDecode(CoolId ?? string.Empty)
          .Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries)

关于c# - View Model int中的C#解析错误?诠释,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43615398/

10-11 15:04