2016-03-22 55 views
0

我正在使用NHibernate 4和Fluent NHibernate將類映射到數據庫。數據庫位於SQL Server 2008 Express實例中。爲什麼使用SchemaUpdate地球創建的所有表希望這一個:爲什麼SchemaUpdate沒有創建這個表?

public class UserMap : ClassMap<UserModel> 
{ 
    public UserMap() 
    { 
     this.Table("User"); 

     this.Id(x => x.Id) 
      .GeneratedBy.Native(); 

     this.Map(x => x.Name) 
      .Length(int.MaxValue) 
      .Not.Nullable(); 
    } 
} 

回答

0

剛剛發現SchemaUpdate試圖創建一個名爲「用戶」表時失敗默默。

該表使用其他名稱(例如, 「用戶」)解決了這個問題:

public class UserMap : ClassMap<UserModel> 
{ 
    public UserMap() 
    { 
     this.Table("Users"); 

     this.Id(x => x.Id) 
      .GeneratedBy.Native(); 

     this.Map(x => x.Name) 
      .Length(int.MaxValue) 
      .Not.Nullable(); 
    } 
} 
+1

也許你能不能再嘗試逃脫表名:'this.Table( 「\'用戶\'」);' (數據庫不可知的轉義,使用後傾'\'')或'this.Table(「[User]」);'(SQL Server特定的轉義,使用尖括號)。 –