好吧,所以這裏是我的問題:如何通過類型名稱獲取通用接口的類型?
我有一個xml文件,有一個方法和它的參數記錄。此XML文件記錄的ID值的列表,下面的.NET泛型接口類型,名稱:
System.Collections.Generic.IList`1[CoreLib.Domain.MyClass]
我知道大多數這些參數都將成爲泛型列表或字典。當我試圖使用的GetType的字符串值我從XML閱讀,這一切都返回null,如果我嘗試將拋出異常標誌設置爲true,它拋出以下消息:
「莫非從 程序集'TestLibrary,版本= 1.0.0.0,Culture = neutral, PublicKeyToken = null'。「不加載類型'CoreLib.Domain.MyClass'
什麼是最好的策略獲得的東西,我可以拉回我可以填充的實際類型?先謝謝你!
UPDATE我試圖組裝引用添加到字符串名稱類似如下:
Type.GetType("System.Collections.Generic.List`1[CoreLib.Domain.MyClass,CoreLibrary]")
或
coreLibAssembly.GetType("System.Collections.Generic.List`1[CoreLib.Domain.MyClass,CoreLibrary]")
兩個結果在一個空的對象,如果我申請豁免被拋出,如果我沒有指定程序集名稱,我得到了相同的信息。我也嘗試使用Assembly Binding Log Viewer,但沒有應用程序出現在列表中,並且在我運行我的代碼(它在nunit正在執行的測試項目中)後,應用程序中似乎沒有出現任何內容。
有什麼想法?
我也試圖在通用的T定義中包含程序集的全名,但仍然沒有運氣。 –