アクションとして条件を別のメソッドに渡したいとします。 「ComputerPriceGenerator」の最初の行は動作しますが、配列work(第2ライン)を作る方法?..私はアドバイスを探しています任意のアイデアC#アクション<T>、パラメータとしての関数を渡す
は...、CalculateAllPriceはまだ
public void ComputerPriceGenerator()
{
//Below line Works
PriceMachine.CalculatePrice(cart.Computers[0],() => ComputerConverter(cart.Computers[0]));
//How to make this work, i don't want to loop it???
PriceMachine.CalculateAllPrice(cart.Computers,() => ComputerConverter(??));
}
public void ComputerConverter(Computer comp)
{
if (comp.Memory <= 2)
comp.Discount = 10;
}
あなたのコードは、LINQを使用するのに最適な候補者であったであろう、しかしそれは副作用がいっぱいです。私はリファクタリングを検討したいと思います。 –
CalculatePriceとCalculateAllPriceの署名を表示せずに、あなたを助ける方法を知るのは難しいです。 –
@Jon Skeet:「CalculateAllPrice」のシグネチャの内容に関する部分的なアドバイスを探しているようでした。しかし、私は間違っている可能性があります。 –