Как подключить NHibernate к MS SQL?
Всем привет.
Я новичок в .Net. С помощью NHibernate пытаюсь подключиться к бд ms sql (wpf).
Мой конфиг:
<?xml version="1.0" encoding="utf-8" ?>
<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.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
<property name="query.substitutions">hqlFunction=SQLFUNC</property>
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
<property name="connection.connection_string">Data Source=C:\Users\Stas\Documents\Visual Studio 2013\Projects\ApplicationForDynamic\ApplicationForDynamic\ContactDb.sdf;Database=dbo.Contact;Integrated Security=True</property>
<property name="show_sql">true</property>
<mapping assembly="WpfApplication" />
</session-factory>
</hibernate-configuration>
</configuration>
Мой маппинг:
<?xml version="1.0" encoding="UTF-8"?> <hibernate-mapping namespace="WpfApplication" assembly="WpfApplication" xmlns="urn:nhibernate-mapping-2.2"> <class name="Contact"> <id name="id" column="id"> <generator class="identity"/> </id>
<property name="fio"/>
<property name="addres"/>
</class> </hibernate-mapping>
При загрузке окна пытаюсь в бд записать данные, но ничего не происходит.
private void Window_Loaded(object sender, RoutedEventArgs e)
{
configuration = new Configuration();
configuration.Configure();
sessionFactory = configuration.BuildSessionFactory();
session = sessionFactory.OpenSession();
using (session.BeginTransaction())
{
Contact loContact = new Contact { fio = "asd" };
session.Save(loContact);
session.Transaction.Commit();
}
}
Где я ошибся или как лучше сделать?
Источник: Stack Overflow на русском