0
我公司目前有以下注冊成立城堡溫莎自動註冊
private static void AddFrameworkComponentsTo(IWindsorContainer container)
{
container.AddComponent<ITypeConverter, TypeConversionFacade>();
container.AddComponent<Framework.Conversion.ITypeConverter<string, int>, StringConverter>();
container.AddComponent<Framework.Conversion.ITypeConverter<string, decimal>, StringConverter>();
container.AddComponent<Framework.Conversion.ITypeConverter<string, DateTime>, StringConverter>();
}
什麼,以避免註冊的每個接口相同的組件最簡單的方法?正如你所看到的,我的「StringConverter」類實現了幾個不同的接口,並且這個列表可能會增長。
編輯 我剛剛意識到,上面甚至沒有工作,因爲抱怨的關鍵,所以不得不將其更改爲以下:
container.AddComponent<Framework.Conversion.ITypeConverter<string, int>, StringConverter>("ITypeConverter<string, int>");
container.AddComponent<Framework.Conversion.ITypeConverter<string, decimal>, StringConverter>("ITypeConverter<string, decimal>");
container.AddComponent<Framework.Conversion.ITypeConverter<string, DateTime>, StringConverter>("ITypeConverter<string, DateTime>");
什麼是處理這個最好的方法是什麼?
上面的代碼應該工作得很好,你看到什麼異常關鍵?你在用什麼版本的Windsor? – 2009-11-18 16:22:56
「有一個組件已經註冊給定的關鍵MyCompany.Framework.Conversion.StringConverter」 – 2009-11-18 17:32:25
啊,對..... – 2009-11-18 18:37:01