2013-08-29 87 views
2

鑑於物業:如何將Func <T, object>轉換爲Func <dynamic,object>?

Func<dynamic,object> Format { set; get; }

而且方法參數:

void SomeMethod(Func<T, object> format) { // Set Format here.. }

在這個方法中,我將如何設置的格式屬性?

+4

這是一個奇怪的這樣做的方法。結果將是一個函數「格式」,它採用動態,但如果動態不能轉換爲類型T,則會失敗。 –

+0

因此,您將需要處理不能將動態類型轉換爲類型T的情況//在這裏設置格式。 –

+0

@LeoLorenzoLuis的確,動態應該小心處理。 –

回答

3

創建一個新的函數,它的動態對象,它轉換到你需要它的對象,然後該值傳遞給你有更具體的功能:

Format = dyn => format((T)dyn); 
相關問題