2017-02-27 103 views
1

我先使用EF代碼,並在我的遷移文件中包含以下內容。EF - 未設置列默認值

public override void Up() 
{ 
    AddColumn("dbo.ConsumerFee", "VATCodeId", c => c.Int(nullable: false, defaultValue: 1)); 
} 

然而,當列被添加到它被賦予的默認值爲0表中未1.當我運行遷移手動我可以看到,它產生此SQL:

alter table `ConsumerFee` add column `VATCodeId` int not null 

不限想法可能與此有關嗎?

+0

不適用於EF6。見[這裏](http://stackoverflow.com/questions/20136504/how-can-set-a-default-value-constraint-with-entity-framework-6-code-first) –

回答

0

這也發生在我身上,這是一個無賴。但是我發現defaultValueSql:「1」將工作,它爲此列設置默認的SQL表達式。 AddColumn(「dbo.ConsumerFee」,「VATCodeId」,c => c.Int(nullable:false,defaultValueSql:「1」));