所以基本上T有一個返回類型,我想要返回泛型返回類型。例如:傳遞參數Func <T>並獲取TResult
private TResult EndInvoke<T, TResult>(Func<T, TResult> asyncCaller, IAsyncResult asyncResult)
{
TResult result = default(TResult);
try
{
result = asyncCaller.EndInvoke(asyncResult);
}
catch (Exception exception)
{
// get exception details.
}
return result;
}
如何通過T調用方法並獲得TResult? 請注意,我只有T.
編輯:我的意思是我該如何稱此方法?
編輯:我想要一個通用的EndInvoke,因爲我是一個巨大的嘗試趕上不同的EndInvokes,那麼我想從EndInvoke的結果。
我編輯了你的標題。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 –
'所以基本上T有一個返回類型'其實,你有返回類型'TResult'。這個問題還不清楚。 –
該函數看起來像它的整個觀點(與另一個函數結合使用,可能名爲'BeginInvoke')是爲了啓用異步調用。如果你只有'T',想調用'asyncCaller',並且想要處理這個結果,那麼你只能使用同步調用。你能澄清你在做什麼嗎? – hvd