我是Fluent NHibernate的新手,我在插入一个ID列设置为INT IDENTITY(1,1)的表时遇到问题。
我的用户地图如下......
public class UserMap : ClassMap<User>
{
public UserMap()
{
Table("User");
Id(x => x.Id).GeneratedBy.Native();
Map(x => x.FirstName);
Map(x => x.LastName);
Map(x => x.Company);
Map(x => x.EmailAddress);
Map(x => x.Password);
Map(x => x.CountryId);
}
}
我希望SQL处理用户的身份,我不想返回任何内容。我已经尝试过GeneratedBy.Identity(),并且我不断获得一个SQL字符串,其中包含插入值的问号,并显示错误消息“关键字用户附近的语法不正确”。
SQL字符串:
INSERT INTO User(FirstName,LastName,Company,EmailAddress,Password,CountryId)VALUES(?,?,?,?,?,?);选择SCOPE_IDENTITY()
有人能指出我正确的方向吗?
答案 0 :(得分:2)
用户是保留字,因此会引发错误
请尝试[用户](使用这些括号),如下所示。
Table("[User]");
也可以看看:
http://technet.microsoft.com/en-us/library/aa238507%28v=sql.80%29.aspx