所以我試圖能夠傳遞一個帶有可變數(shù)量參數(shù)的 Func 。就像是:public object GetValue<T>(string name, Func<object> func) { var result = func.DynamicInvoke();}當(dāng) func 的參數(shù)數(shù)量已知時,上述函數(shù)/簽名效果很好。但是當(dāng)您希望參數(shù)的數(shù)量在運行時之前未知時,它很快就會崩潰。我想更改方法簽名以允許以下場景,而不使用方法重載:// No argumentsvar result = GetValue("Bob", () => { return "Bob Smith"; });// 1 argumentvar result = GetValue("Joe", (i) => { return "Joe " + i.ToString(); });// 2 argumentsvar result = GetValue("Henry", (i,e) => { return $"i: {i.ToString()}, e: {e.ToString()}"; });現(xiàn)在不需要超過 2 個參數(shù)......但可能在未來。調(diào)用語法對我來說是最重要的一點。我寧愿不讓來電者投射任何東西。我已經(jīng)查看了這個問題和答案,但它們似乎都需要一些我不想使用的調(diào)用語法。任何想法如何實現(xiàn)?
- 3 回答
- 0 關(guān)注
- 200 瀏覽
添加回答
舉報
0/150
提交
取消