從給定的項目中,有什麼方法可以創建其他項目中包含的類的實例?不同項目之間的反射(程序集)
我通常使用Assembly.GetExecutingAssembly().CreateInstance()
,但很明顯,這個調用將返回NULL,因爲我指定的類被保存在另一個項目中。
任何想法?
從給定的項目中,有什麼方法可以創建其他項目中包含的類的實例?不同項目之間的反射(程序集)
我通常使用Assembly.GetExecutingAssembly().CreateInstance()
,但很明顯,這個調用將返回NULL,因爲我指定的類被保存在另一個項目中。
任何想法?
如果你真的想使用反射來實現這一點再看看Assembly.LoadFrom()
。 http://msdn.microsoft.com/en-us/library/system.reflection.assembly.loadfrom.aspx 另外,正如有人指出,你可以簡單地使用項目引用。
如果您嘗試進行反射,您可能需要使用Assembly.LoadFrom()從文件加載程序集。
但是,如果您只是想使用程序集中的對象,請將程序集作爲項目的引用(右鍵單擊解決方案資源管理器中的項目,然後單擊「添加引用」)。然後,您可以使用引用程序集中的所有公共對象。
引用該項目時出現了什麼問題? – vcsjones
我不認爲Assembly.GetExecutingAssembly()。CreateInstance()將允許您從另一個項目加載對象,即使該項目正在被執行的項目中被引用。 –
所以你基本上需要一個循環引用? – vcsjones