Я работаю над WCF с инъекцией зависимостей Unity. Все работало нормально в VS2012. Сервис находится в 32-разрядной версии. Теперь мы обновляем сервис до 64-разрядной версии, Service получает обновление. Но во время запуска приложения я получаю Unity Exception, файл web.config также в порядке.WCF, Контейнер Unity Microsoft.Practices.Unity.Configuration.dll, но не обрабатывался в коде пользователя
Исключение:
Исключение типа «System.InvalidOperationException» произошло в Microsoft.Practices.Unity.Configuration.dll, но не был обработан в пользовательском коде
Дополнительная информация: Имя типа или псевдоним ReportDecodingDefault не может быть разрешен. Проверьте конфигурационный файл и проверьте его имя.
Web.Config:
<typeAlias alias="ISignatureCalculation" type="Diagnostics.Report.Repository.Contract.ISignatureCalculation, Diagnostics.Report.Repository.Contract" />
<typeAlias alias="SignatureCalculationDefault" type="Diagnostics.Report.Signature.SignatureCalculation, Diagnostics.Report.Signature" />
<typeAlias alias="SignatureCalculationBGL" type="Diagnostics.Report.Signature.BGL.SignatureCalculation, Diagnostics.Report.Signature.BGL" />
<typeAlias alias="SignatureCalculationPrototyp" type="ErrorReportAnalyzer.SignatureCalculator, ErrorReportAnalyzer" />
<typeAlias alias="SignatureCalculationRefactored" type="ExceptionBasedAndReferencesMappingAlgorithm.SignatureCalculator, ExceptionBasedAndReferencesMappingAlgorithm" />
<typeAlias alias="IDataStore" type="Diagnostics.Report.Repository.Contract.IDataStore, Diagnostics.Report.Repository.Contract" />
<typeAlias alias="DataStoreDefault" type="Diagnostics.Report.Repository.SqlDb.SqlDataManager, Diagnostics.Report.Repository.SqlDb" />
</typeAliases>
<container>
<types>
<type type="IReportDecoding" mapTo="ReportDecodingDefault"></type>
<type type="ISignatureCalculation" mapTo="SignatureCalculationRefactored"></type>
<type type="IDataStore" mapTo="DataStoreDefault"></type>
</types>
</container>
</unity>
Получение исключение при загрузке конфигурации
Контейнер = newUnityContainer();
Container.LoadConfiguration(); (Здесь исключение)
Пожалуйста, помогите.
HI Jeroen, Спасибо за ответ. Библиотека классов ReportDecodingDefault была скомпилирована в x64 только не в 32 бит. любые другие подсказки, пожалуйста, – user1255105
Я нашел это [ссылка] (http://stackoverflow.com/questions/8051347/xml-config-changes-in-unity-2-0). Вы уверены, что обновление Unity не выполнено? Я также заметил, что в начальном вопросе не существует типов для ReportDecodingDefault. –