Я сейчас настраиваю проект в. NET Framework 4 с Nhibernate и MySQL 8 в качестве моей БД.
Кажется, я не могу понять, где я ошибся, но я ' я предполагаю, что это из-за диалекта в моем hibernate.cfg. xml, что он ничего не возвращает обратно.
Я хочу знать, верна ли эта строка из моей конфигурации xml для MySQL8
<property name="dialect">NHibernate.Dialect.MySQLDialect</property>
<property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property>
Код, который я хочу запустить:
MyConfig = new Configuration();
MyConfig.Configure();
MyConfig.AddAssembly(typeof(Users).Assembly);
MySessionFactory = MyConfig.BuildSessionFactory();
MySession = MySessionFactory.OpenSession();
using (MySession)
{
int id = 1;
Users user = MySession.CreateCriteria(typeof(Users))
.Add(Restrictions.Eq("UserId", id))
.UniqueResult<Users>();
Console.WriteLine($"Get {user}");
}
The Users.hbm. xml
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="My"
namespace="My.Domain">
<class name="Users">
<id name="UserId">
<generator class="native"></generator>
</id>
<property name ="Username" />
<property name ="FirstName" />
<property name ="LastName" />
<property name ="Status" />
</class>
</hibernate-mapping>