3
是否有任何方式通過類型的字符串名稱從StructureMap ObjectFactory請求實例?例如,它會是不錯的做這樣的事情:按類型名稱從StructureMap獲取實例
var thing = ObjectFactory.GetInstance("Thing");
用例這裏是其中的信息是非常通用,幷包含一個任務的唯一名稱的消息傳遞方案。處理程序接收消息,從消息中獲取任務名稱,並從配置數據庫中檢索關聯的任務運行程序的類型名稱。 StructureMap掃描目錄中的所有程序集,其中一個會(大概)包含從配置數據庫返回的類型,然後需要實例化。
另一種可能是通過做搶類型實例如下:
var type = Type.GetType("Thing");
但問題有組裝可能會或可能/不可能在AppDomain中加載,使反射調用並不總是可能。
如果StructureMap已掃描程序集,它們將加載到AppDomain中。如果Type.GetType()不能得到它,StructureMap將無法做到。 – 2010-03-12 14:09:11