1
我正在尝试做最简单的映射与FluentNHibernate & Sql2005。基本上,我有一个名为“sv_Categories”的数据库表。我想添加一个类别,自动设置ID,并添加提供的用户标识和标题。FluentNHibernate错误 - “无效的对象名称”
数据库表的布局:
- 类别ID - INT - 不空,主键,自动递增
- 用户名 - 唯一标识符 - 不为空
- 标题 - VARCHAR(50 ) - 非空
简单。
My SessionFactory code (which works, as far as I can tell):
_SessionFactory = Fluently.Configure().Database(
MsSqlConfiguration.MsSql2005
.ConnectionString(c => c.FromConnectionStringWithKey("SVTest")))
.Mappings(x => x.FluentMappings.AddFromAssemblyOf<CategoryMap>())
.BuildSessionFactory();
我的类映射代码:
public class CategoryMap : ClassMap<Category>
{
public CategoryMap()
{
Id(x => x.ID).Column("CategoryID").Unique();
Map(x => x.Title).Column("Title").Not.Nullable();
Map(x => x.UserID).Column("UserID").Not.Nullable();
}
}
我的班级代码:
public class Category
{
public virtual int ID { get; private set; }
public virtual string Title { get; set; }
public virtual Guid UserID { get; set; }
public Category()
{
// do nothing
}
}
而且网页,我保存对象:
public void Add(Category catToAdd)
{
using (ISession session = SessionProvider.GetSession())
{
using (ITransaction Transaction = session.BeginTransaction())
{
session.Save(catToAdd);
Transaction.Commit();
}
}
}
我收到错误
无效的对象名称'Category'。 描述:在执行 当前Web请求期间发生未处理的异常 。请查看 堆栈跟踪以了解有关 错误的更多信息,以及它源自 的代码。
异常详细信息: System.Data.SqlClient.SqlException: 无效的对象名称'Category'。
我想这可能是我没有告诉CategoryMap类使用“sv_Categories”表,但我不知道该怎么做。
任何帮助,将不胜感激。谢谢!
这样做!非常感谢! :) – SeanKilleen 2010-05-16 15:48:59