2014-07-13 59 views
1

我想創建使用SQLite Windows Phone的一個表:重複的列名的Windows Phone

[Table("Accounts")] 
public class Account : ObservableObject 
{ 
    private int id; 
    private string name; 
    private double balance; 

    [Column("id"), PrimaryKey, AutoIncrement] 
    public int ID 
    { 
     get { return this.id; } 
     set { Set(() => ID, ref id, value); } 
    } 

    [Column("name")] 
    public string Name 
    { 
     get { return this.name; } 
     set { Set(() => Name, ref name, value); } 
    } 

    [Column("balance")] 
    public double Balance 
    { 
     get { return this.balance; } 
     set { Set(() => Balance, ref balance, value); } 
    } 
} 

Connection = new SQLiteAsyncConnection("database.sqlite"); 

await Connection.CreateTableAsync<Account>(); 

的CreateTableAsync方法引發SQLiteException一條消息「重複的列名:ID」。怎麼了?

回答

0

使用[Ignore]屬性不屬於表列的此類屬性

+0

id屬性用作表列。此外,我已經在MVS2013中使用與上述相同的代碼創建了新項目,並且沒有例外。 – kulaeff

+0

將'[Ignore]'添加爲'private int id;'對於'ID'添加'no。 – Xyroid

+0

無法爲私有財產添加「[忽略]」。正如我所說,**在新項目**中沒有提出任何例外。 – kulaeff