Мы недавно обновили наш проект windows form C # с NHibernate 2.0 до 2.1. Мы обновили наш app.config, добавив в него «proxyfactory.factory_class», чтобы он указывал на выбранный прокси (в нашем случае это «NHibernate.ByteCode.Castle»). После обновления программа собирается и работает, как и ожидалось, без проблем. Наша проблема заключается в том, что при попытке открыть любые формы, имеющие ссылки на NHibernate при загрузке в конструкторе Visual Studio 2008, теперь выдается следующая ошибка (как если бы мы не настроили прокси-сервер):
Завод ProxyFactory не был
сконфигурировано. инициализировать
свойство proxyfactory.factory_class
конфигурации сессионной фабрики
раздел с одним из доступных
Провайдеры NHibernate.ByteCode.
Трассировка стека:
at NHibernate.Bytecode.AbstractBytecodeProvider.get_ProxyFactoryFactory()
at NHibernate.Cfg.Configuration.Validate()
at NHibernate.Cfg.Configuration.BuildSessionFactory()
at DAL.NHibernateHelper..cctor() in ...\DAL\NHibernateHelper.cs:line 62
Строка 62 от NHibernateHelper:
static NHibernateHelper()
{
var cfg = new Configuration();
cfg.Configure();
cfg.AddAssembly("DAL");
sessionFactory = cfg.BuildSessionFactory(); // <-- line 62
}
Вот наша конфигурация app.config для NHibernate:
<configuration>
<configSections>
<section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" />
</configSections>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
<property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
<property name="connection.connection_string">Server=ourserver;initial catalog=ourdb;Integrated Security=SSPI</property>
<property name="proxyfactory.factory_class">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property>
<property name="show_sql">true</property>
</session-factory>
</hibernate-configuration>
</configuration>
Кто-нибудь знает, как решить эту проблему? Спасибо!