2012-05-15 106 views
0

我有錯誤的列Id不能包含空值,但我在IsDbGenerated上設置爲true。我究竟做錯了什麼?自動增量字段沒有被自動設置

private int id; 
[Column(IsPrimaryKey=true, CanBeNull=false, DbType="int", IsDbGenerated=true)] 
public int Id 
{ 
    get { return id; } 
    set 
    { 
     if (id != value) 
     { 
      id = value; 
      RaisePropertyChanged("Id"); 
     } 
    } 
} 
+0

怎麼樣數據庫。你有沒有在數據庫中設置idetity = yes – Tassadaque

+0

它是獨立存儲中Windows Phone的sdf(SQLce)。 – user384080

+0

http://www.any-ti.me/manually-setting-autoincrement-identity-fields-in-sqlce-31-and-35.aspx – Tassadaque

回答

0

試試這個

private int id; 
    [Column(IsPrimaryKey=true, IsDbGenerated=true, DbType="INT NOT NULL IDENTITY", CanBeNull=false, AutoSync=AutoSync.OnInsert)] 
    public int Id 
    { 
     get { return id; } 
     set 
     { 
      if (id != value) 
      { 
       NotifyPropertyChanging("Id"); 
       id = value; 
       NotifyPropertyChanged("Id"); 
      } 
     } 
    }