Fluent Nhibernate Nunit测试错误
我正在尝试使用流畅的Nhibernate映射来学习Nhibernate,我已经创建了一个小的测试应用程序。代码如下: 用户类:Fluent Nhibernate Nunit测试错误,nhibernate,fluent-nhibernate,Nhibernate,Fluent Nhibernate,我正在尝试使用流畅的Nhibernate映射来学习Nhibernate,我已经创建了一个小的测试应用程序。代码如下: 用户类: public class User { public string UserName { get; set; } public string Password { get; set; } public string Role { get; set; } public string Email { get; set; } publi
public class User
{
public string UserName { get; set; }
public string Password { get; set; }
public string Role { get; set; }
public string Email { get; set; }
public DateTime JoinDate { get; set; }
}
用户映射类:
public class UserMapping: ClassMap<User>
{
public UserMapping()
{
WithTable("UserT");
Not.LazyLoad();
Id(u => u.UserName);
Map(u => u.Password);
Map(u => u.Role);
Map(u => u.Email);
Map(u => u.JoinDate);
}
}
当我尝试运行测试类时,我得到以下错误:对象引用未设置为对象的实例。
我在GetUserByUserName方法中放置了一个断点,并注意到它返回一个空用户。但我无法理解为什么会发生这种情况。有人能帮我吗?看看你的数据库配置正确吗? 您确定您的数据库服务器是“服务器名”吗
如果您使用SELECT*FROM UserT查询数据库,其中UserName='testUser',结果是什么?
public class DALUser
{
public User GetUserByUserName(string userName)
{
ISessionFactory sessionFactory = Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2005.ConnectionString(c => c.Server("ServerName").Database("DBName").TrustedConnection()))
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<UserMapping>()).BuildSessionFactory();
ISession session = sessionFactory.OpenSession();
return session.Get<User>(userName);
}
}
[TestFixture]
public class UserTest
{
[Test]
public void CanGetUserByUserName()
{
DALUser user1 = new DALUser();
Assert.AreEqual("testUser", user1.GetUserByUserName("testUser").UserName);
}
}