J'ai une unité d'installation dans mon projet et il fonctionne pour les objets sur lesquels aucune injection de constructeur n'est implémentée. Le problème est maintenant que j'ai un objet qui nécessite un objet personnalisé en tant qu'argument de constructeur. Je l'ai mis en place la configuration ci-dessous, et cette erreur me disant que « TypeConverter ne peut pas convertir System.String »Constructeurs Unity
<unity>
<typeAliases>
<typeAlias alias="TransactionRepositoryInterface" type="Ib.TransactionViewer.DataAccess.ITransactionRepository, Ib.TransactionViewer.DataAccess" />
<typeAlias alias="TransactionRepositoryToUse" type="Ib.TransactionViewer.DataAccess.TransactionRepository, Ib.TransactionViewer.DataAccess" />
</typeAliases>
<containers>
<container>
<types>
<type type="TransactionRepositoryInterface" mapTo="TransactionRepositoryToUse">
<lifetime type="singleton" />
<typeConfig extensionType="Microsoft.Practices.Unity.Configuration.TypeInjectionElement, Microsoft.Practices.Unity.Configuration, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
<constructor>
<param name="TransactionProcessor" parameterType="Ib.TransactionViewer.DataAccess.TransactionProcessor, Ib.TransactionViewer.DataAccess">
<value value="Ib.TransactionViewer.DataAccess.TransactionProcessor" type="Ib.TransactionViewer.DataAccess.TransactionProcessor, Ib.TransactionViewer.DataAccess" />
</param>
</constructor>
</typeConfig>
</type>
</types>
</container>
</containers>
</unity>
Est en utilisant la configuration XML une exigence? Je préfère de loin la configuration en code Fluent; Je pense que vous trouverez plus facile à lire et à déboguer. – TrueWill