2015-08-13 6 views
1

Недавно я получил задание на работу, чтобы узнать все об этой структуре, но я даже не могу начать работу. Я прочитал все блоги и документацию об этой конкретной части инициализации, но всем им не менее 3-4 лет, и нет обновленной информации об этом. This является официальной документацией по Castle ActiveRecord. Я немного изменил его, так как InPlaceConfigurationSource больше не имеет перегрузки, которая использует HashTable, и я думаю, что это проблема с этим, так как я получаю это исключение.Замок ActiveRecord не подключается к базе данных

public Form1() 
    { 
     InitializeComponent(); 

     InPlaceConfigurationSource source = new InPlaceConfigurationSource(); 

     IDictionary<string,string> properties = new Dictionary<string, string>(); 

     properties.Add("hibernate.connection.driver_class", "NHibernate.Driver.SqlClientDriver"); 
     properties.Add("hibernate.dialect", "NHibernate.Dialect.MsSql2008Dialect"); 
     properties.Add("hibernate.connection.provider", "NHibernate.Connection.DriverConnectionProvider"); 
     properties.Add("hibernate.connection.connection_string", "Server=.\\SQLEXPRESS;Initial Catalog=TestDB; Trusted_Connection=true;"); 

     source.Add(typeof(ActiveRecordBase), properties); 

     ActiveRecordStarter.Initialize(source, typeof(Blog)); 
    } 

Тип инициализатор '' Castle.ActiveRecord.ActiveRecordStarter бросили исключение.

"Не удалось загрузить тип 'Iesi.Collections.Generic.HashedSet'1' из сборки 'Iesi.Collections, Version = 4.0.0.0, культура = нейтральной, PublicKeyToken = aa95f207798dfdb4.": "Iesi.Collections.Generic .HashedSet`1 "

ответ

1

Мне это удалось, и я отправлю ответ на случай, если кто-нибудь застрянет в этом. Я решил это, удалив все добавленные ссылки и поискать старые dll в другом проекте и вручную ссылаясь на них в explorer. Менеджер NuGet возвращает только более новые версии, которые несовместимы друг с другом (ActiveRecord, NHibernate, log4net и т. Д.) Или не имеют всех старых классов, определенных больше (т. Е. Исключение в этом сообщении)