是否有方法内联初始化异常's数据
本文关键字:数据 异常 有方法 初始化 是否 | 更新日期: 2023-09-27 18:02:59
我想在不创建异常变量的情况下抛出带有额外数据的异常。像这样:
throw new Exception() { Data.Add("foo", "bar") };
有可能吗?
看起来你应该可以这样做:
throw new Exception { Data = { { "foo", "bar" } } };
(假设你使用c# 3,它有集合初始化式…)
当然你可以和构造函数参数一起使用
throw new ArgumentException("paramName") { Data = { { "foo", "bar" } } };
遗憾的是,您不能使用对象初始化式来调用这样的方法
它确实有一个parametrized constructor
取字符串;
throw new Exception("Hello World");
问题不是很清楚(即什么是数据的类型…)如果你的意思是你需要把一些消息放入Exception:
throw new Exception (Data.Add("foo", "bar").ToString());