我有一个运行Nhibernate的VS 2012解决方案。我有一个sessionmanager,映射文件,以及一个简单的respority与以下方法。
public User GetUser()
{
ISession session = SessionManager.OpenSession();
User user = session.Query<User>().First();
return user;
}
但是......如果我调用该方法,则不会从查询中返回任何结果(当数据库中有数据时)...我的映射文件等被部署到bin文件夹。
映射文件:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Main.Objects.User,Main.Objects">
<id name="Id">
<generator class="guid.comb" />
</id>
<property name="UserName"/>
</class>
</hibernate-mapping>
hibernate config:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory name="">
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="dialect">NHibernate.Dialect.MySQL5Dialect</property>
<property name="connection.driver_class">NHibernate.Driver.MySqlDataDriver</property>
<property name="connection.connection_string">Server=localhost;Database=DB;uid=root;pwd=root</property>
<mapping assembly="Main.Objects"/>
</session-factory>
</hibernate-configuration>
基本用户类:
public class SYUser
{
public virtual Guid Id { get; set; }
public virtual string UserName { get; set; }
}
映射和hibernate配置文件在数据库特定的类库中,查询在另一个中,另一个中的对象也是如此...所以3个类库
有什么想法吗?
答案 0 :(得分:1)
好吧,我得到了检索数据的工作,我改变了几件事,其中一件事是方言的外壳(MySQL而不是MySql)。它真的很慢......后来要考虑一下:)至少现在一切都在运行:)