1
我想用NHibernate獲得一個MVC站點爲依賴注入使用StructureMap設置。這是從我的StructureMap登記處的一行:StructureMap尋找一個實例System.Type
ForRequestedType<NHibernate.ISession>().CacheBy(StructureMap.Attributes.InstanceScope.HttpContext)
.TheDefault.Is.ConstructedBy(
context => context.GetInstance<IDatabaseScope>().OpenSession());
換句話說(或者是什麼我打算做的情況下),接口IDatabaseScope有一個方法的openSession將返回一個會話
用於該HttpRequest的。
我得到的是一個StructureMap異常代碼202,沒有默認實例爲PluginFamily System.Type定義。
現在我明白了「無默認實例」異常,並且我已經完成了其中的幾個。但是爲什麼它要尋找System.Type的默認實例? (即,它不失敗尋找ISession或IDatabaseScope的實例,或鏈中的任何其他東西,它試圖創建一個System.Type的實例)。爲什麼?