我已經創建了一個泛型類,但我知道運行時的類型,而不是設計,所以我想知道如何在運行時設置類型。,如何在運行時設置類型?
例如,我有:
public class MyGenericClass<T>
{
....
}
然後我嘗試使用它。我在其他類中有一個方法,它使用這個泛型類。在這個類的構造函數中,我接收到我想要的類型作爲參數,所以我有一個type屬性,用於保存我需要的類型。所以我想這個:
MyGenericClass<_typeNeeded> myClass = new MyGenericClass<typeNeeded>();
但這不起作用。
如何在運行時在我創建的類中設置類型?
我正在使用C#4.0。
謝謝。 Daimroc。
編輯:我想要做的是以下。我有一個需要對數據庫進行查詢的類。這個查詢總是返回相同的信息,一個類,但是包含這個類的信息來自不同的表。這是因爲我需要確定要使用的查詢。要決定使用什麼查詢,我使用我收到的類型。
正是因爲這個原因,我不知道設計中的類型,而是在運行時。
我可以使用一個接口,它將實現的類,並使用正確的類實例化的接口,但這使得我有一個開關或一個如果在實例化的時刻,這就是我儘量避免,我想要更通用的東西。另外,如果我使用這個解決方案,在實例的時候可以創建一個泛型類,所以我只有一個類,它會更易於維護。
這是不可能的,沒有廣泛的思考。 – Femaref
你見過[此鏈接](http://geekswithblogs.net/marcel/archive/2007/03/24/109722.aspx)? –
爲什麼不使用動態關鍵字? –