我在 C# 中使用以下模式:
IList<foo> x = y.Select(a => new foo
{
b = Calc1(),
c = Calc2()
}).ToList();
foreach(foo f in x)
{
f.d = b / c;
}
我想做的是:
IList<foo> x = y.Select(a => new foo
{
b = Calc1(),
c = Calc2()
d = b / c;
}).ToList();
所以问题是:如何修改此模式以允许分配一个依赖于在分配期间计算的其他值的值?
(可能有人会指出 d 应该是一个进行计算并返回值的属性。这是一个人为的例子。假设 d 的值是使用除了 c 和 b 之外的其他值计算的,这些值以后不可用。 )