C# Fluent NHibernate插入到具有int标识的表

C# Fluent NHibernate插入到具有int标识的表,c#,sql,fluent-nhibernate,fluent-nhibernate-mapping,C#,Sql,Fluent Nhibernate,Fluent Nhibernate Mapping,我是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);

我是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); 
    }

}
公共类用户映射:类映射
{
公共用户映射()
{
表(“用户”);
Id(x=>x.Id).GeneratedBy.Native();
Map(x=>x.FirstName);
Map(x=>x.LastName);
Map(x=>x.Company);
映射(x=>x.EmailAddress);
映射(x=>x.Password);
Map(x=>x.CountryId);
}
}
我希望SQL处理用户的身份,我不想返回任何内容。我尝试了GeneratedBy.Identity(),不断得到一个SQL字符串,该字符串在insert上的值带有问号,错误消息为“关键字User附近的语法不正确”

SQL字符串:

在用户(名字、姓氏、公司、电子邮件地址、密码、CountryId)中插入值(?、、、、、、、、?);选择范围_标识()


有人能给我指出正确的方向吗?

用户是保留字,因此会引发错误。

请尝试使用[User](带这些括号),如下所示

Table("[User]");

另见:

谢谢Peter。我刚刚将映射类更改为Table(“[User]”),得到了所需的结果