是否有任何 C# 计算引擎可以在值更改时自动重新计算依赖字段?
让我自由泳一秒钟,我在想象这样的事情..
Field<double> quantity = Field.Create<double>("Quantity");
Field<double> unitCost = Field.Create<double>("Unit Cost");
Field<double> total = Field.Create<double>("Total");
total.Calculation((q,uc) => q * uc, quantity, value);
// would have signature something like this:
// void Calculation<TR,T1,T1>(Func<TR,T1,T2>, Field<T1>, Field<T2>)
这将设置自动传播相关值的字段。
quantity.Value = 5.0;
unitCost.Value = 1.5;
Assert.That(total.Value, Is.EqualTo(7.5));
显然这是一个简单的例子,最终用途将更类似于复杂电子表格的计算。
进一步思考如果字段/单元格支持更改通知,那将是惊人的。