有没有办法内联初始化异常的数据?

Pom*_*oma 1 .net c#

我想在不创建异常变量的情况下使用其他数据抛出异常.像这样的东西:

throw new Exception() { Data.Add("foo", "bar") };
Run Code Online (Sandbox Code Playgroud)

可能吗?

Jon*_*eet 7

看起来你应该可以这样做:

throw new Exception { Data = { { "foo", "bar" } } };
Run Code Online (Sandbox Code Playgroud)

(假设您正在使用C#3,它具有集合初始化程序......)

当然,您可以结合构造函数参数执行此操作:

throw new ArgumentException("paramName") { Data = { { "foo", "bar" } } };
Run Code Online (Sandbox Code Playgroud)