我想將一個條件作爲Action傳遞給另一個方法。在「ComputerPriceGenerator」第一線工作,但如何使陣列工作(第二行)?..任何想法C#Action <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,但它是完全的副作用。我會考慮重構。 – 2011-01-31 23:52:45
沒有顯示CalculatePrice和CalculateAllPrice的簽名,很難知道如何幫助你。 – 2011-01-31 23:53:14
@Jon Skeet:看起來他似乎正在部分尋找關於「CalculateAllPrice」簽名應該是什麼的建議。雖然我可能是錯的。 – 2011-01-31 23:57:43