[英]cannot convert from 'method group' to Func<List<ClassA>> when instantiating a new Task
我有一個 function 返回一個列表,即
public List<ApiClass> FuncA(List<DBClass> param)
{
//returns list
//however this list performs a lengthy operation that involves looping through the incoming parameter list
}
我想在下面嘗試異步調用上述方法:
public static async void CallingMethod()
{
Task<List<ApiClass>> unitOfWork = new Task<List<ApiClass>>(FuncA); //I'm getting an error here when I pass in FuncA
unitOfWork.Start();
List<ApiClass> getList = await unitOfWork;
}
我在這里收到一個錯誤: Task<List<ApiClass>> unitOfWork = new Task<List<ApiClass>>(FuncA);
Task<List<ApiClass>>
需要這樣的方法簽名: public List<ApiClass> FuncA()
- 沒有任何方法參數。
Task
如何知道傳遞給FuncA
的參數?
你可以試試這個:
List<DBClass> inputData = ...
Task<List<ApiClass>> unitOfWork = new Task<List<ApiClass>>( () => FuncA( inputData ) );
它使用 lambda 表達式創建內聯Func<List<ApiClass>>
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.