我正在构建一个字符串列表,然后想要抛出异常并让UI处理列表并为用户创建错误消息。
有办法吗?
答案 0 :(得分:32)
异常包含Data
属性(这是一个字典)。它可用于传递其他信息:
try
{
// throw new Exception
}
catch(Exception e)
{
// whatever
e.Data["SomeData"] = new List<string>();
}
答案 1 :(得分:30)
您可以使用Exception.Data
属性传递任意数据,但更好(更干净)的解决方案是创建从Exception派生的自定义异常类,并添加您需要的任何属性。
示例代码:
public class MyException: Exception
{
public List<String> MyStrings { get; private set; }
public MyException(List<String> myStrings)
{
this.MyStrings = myStrings;
}
}