Инициализатор типа для 'NHibernate.Cfg.Configuration' вызвал исключение - PullRequest
4 голосов
/ 21 июня 2009

Я использую FluentNHibernate и на этапе настройки я получаю следующую ошибку:

Вот конфигурация:

публичная статическая ISessionFactory CreateSessionFactory () { вернуть Fluently.Configure (). База данных ( MsSqlConfiguration.MsSql2000.ConnectionString ( c => c.FromConnectionStringWithKey ("HighOnCodingConnectionString"))) .Mappings (m =>
m.FluentMappings.AddFromAssemblyOf ()) .BuildSessionFactory (); }

А вот и ошибка:

[сбой] when_instantiating_a_session_factory.should_be_able_to_create_a_session_factory TestCase 'when_instantiating_a_session_factory.should_be_able_to_create_a_session_factory' ошибка: инициализатор типа для «NHibernate.Cfg.Configuration» выдал исключение. System.TypeInitializationException Сообщение: инициализатор типа для 'NHibernate.Cfg.Configuration' выдал исключение. Источник: NHibernate Трассировки стека: в NHibernate.Cfg.Configuration..ctor () c: \ FluentNHibernate \ src \ FluentNHibernate \ Cfg \ FluentConfiguration.cs (25,0): в FluentNHibernate.Cfg.FluentConfiguration..ctor () c: \ FluentNHibernate \ src \ FluentNHibernate \ Cfg \ Fluently.cs (16,0): в FluentNHibernate.Cfg.Fluently.Configure () C: \ Projects \ highoncodingmvc \ src \ highoncoding \ src \ HighOnCoding.BusinessObjects \ Factories \ SessionFactory.cs (17,0): в HighOnCoding.BusinessObjects.Factories.SessionFactory.CreateSessionFactory () C: \ Projects \ highoncodingmvc \ src \ highoncoding \ src \ HighOnCoding.TestSuite \ Configuration \ TestFluentNHiberate.cs (17,0): в HighOnCoding.TestSuite.Configuration.when_instantiating_a_session_factory.should_c Внутреннее исключение System.IO.FileLoadException Сообщение. Определение манифеста обнаруженной сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040) Источник: NHibernate Трассировки стека: в NHibernate.Cfg.Configuration..cctor ()

Вот информация из журнала FusionLog:

* Запись в журнале подшивки сборки (21.06.2009 @ 12:49:38 PM) *

Операция не выполнена. Результат привязки: hr = 0x80070002. Система не может найти указанный файл.

Менеджер сборки загружен из: c: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ mscorwks.dll Запуск под исполняемым файлом C: \ Projects \ highoncodingmvc \ src \ highoncoding \ src \ HighOnCodingConsole \ bin \ Debug \ HighOnCodingConsole.exe --- Подробный журнал ошибок следует.

=== Предварительная привязка информации о состоянии === LOG: пользователь = D9SKQBG1 \ AzamSharp LOG: DisplayName = NHibernate.XmlSerializers, версия = 2.0.1.4000, культура = нейтральная, PublicKeyToken = aa95f207798dfdb4, processorArchitecture = MSIL (Полностью указано) LOG: Appbase = file: /// C: / Projects / highoncodingmvc / src / highoncoding / src / HighOnCodingConsole / bin / Debug / LOG: Initial PrivatePath = NULL LOG: динамическая база = NULL LOG: Cache Base = NULL LOG: AppName = NULL

Вызов сборки: System.Xml, версия = 2.0.0.0, культура = нейтральная, PublicKeyToken = b77a5c561934e089.

LOG: эта привязка начинается в контексте загрузки по умолчанию. LOG: Использование файла конфигурации приложения: C: \ Projects \ highoncodingmvc \ src \ highoncoding \ src \ HighOnCodingConsole \ bin \ Debug \ HighOnCodingConsole.exe.Config LOG: Использование файла конфигурации компьютера из c: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ config \ machine.config. LOG: ссылка после политики: NHibernate.XmlSerializer, версия = 2.0.1.4000, культура = нейтральная, PublicKeyToken = aa95f207798dfdb4, processorArchitecture = MSIL LOG: GAC Поиск был неудачным. LOG: Попытка загрузки нового файла URL: /// C: /Projects/highoncodingmvc/src/highoncoding/src/HighOnCodingConsole/bin/Debug/NHibernate.XmlSerializers.DLL.LOG: Попытка загрузки нового файла URL: /// C: /Projects/highoncodingmvc/src/highoncoding/src/HighOnCodingConsole/bin/Debug/NHibernate.XmlSerializers/NHibernate.XmlSerializers.DLL. LOG: Попытка загрузки нового файла URL: /// C: /Projects/highoncodingmvc/src/highoncoding/src/HighOnCodingConsole/bin/Debug/NHibernate.XmlSerializers.EXE. LOG: Попытка загрузки нового файла URL: /// C: /Projects/highoncodingmvc/src/highoncoding/src/HighOnCodingConsole/bin/Debug/NHibernate.XmlSerializers/NHibernate.XmlSerializers.EXE. Журнал: все зондирующие URL-адреса были попытки и не удалось.

Ответы [ 2 ]

2 голосов
/ 18 октября 2011

Я знаю, что это давно решено, но, столкнувшись с этой проблемой сегодня, я нашел это в качестве своего личного решения и решил поделиться знаниями:

https://forum.hibernate.org/viewtopic.php?p=2399679

Из должности:

«Мой отладчик в Visual Studio был настроен так, чтобы разбивать все исключения, корректировка настроек исключений устраняла мою проблему.»

Также привел меня к:

http://www.codewrecks.com/blog/index.php/2008/02/13/sgenexe-and-strongly-named-assemblies/

"После некоторого поиска я обнаружил, что сборка xxxx.XmlSerializers является предварительно созданной сборкой, которую xmlserializer ищет, прежде чем пытаться сгенерировать ее во время выполнения ..."

2 голосов
/ 21 июня 2009

Похоже, что вы скомпилировали одну версию сборки, но во время выполнения она находит другую и жалуется. Я предлагаю вам включить Fusion logging , чтобы выяснить, что происходит, в частности, точную сборку, которая вызывает проблемы!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...