0
我有一個PK定義的實體,它是底層數據庫中的Identity列。在大多數情況下,我只是讓SQL Server爲我創造價值。但是,在某些情況下,我想提供一個值而不是SQL Server來生成一個值。我能用EF 5做到這一點嗎(使用Code First)?實體框架5 - 代碼優先 - 插入身份值?
我有一個PK定義的實體,它是底層數據庫中的Identity列。在大多數情況下,我只是讓SQL Server爲我創造價值。但是,在某些情況下,我想提供一個值而不是SQL Server來生成一個值。我能用EF 5做到這一點嗎(使用Code First)?實體框架5 - 代碼優先 - 插入身份值?
如果是SQL服務器,然後發送命令需要使用ExecuteSQLCommand
我創造了這個試驗爲例
[Fact]
private void IdentityInsertOK()
{
var sql = "set identity_insert ConfigSettings on " +
"delete from ConfigSettings where id =2 " +
"insert into ConfigSettings (Id,Name, value) values (2,'test ','testval') " +
"set identity_insert ConfigSettings off ";
using (var Db = SettingsHelper.CreateContext(ConnectionType.Syrius))
{
Db.Database.ExecuteSqlCommand(sql);
Db.SaveChanges();
}
}
它的SQL側由SET IDENTITY_INSERT 處理HTTP:// msdn.microsoft.com/en-us/library/aa259221(v=sql.80).aspx – 2013-05-07 03:10:35
http://stackoverflow.com/questions/15509564/entity-framework-code-first-migrations-set-primary-key -值 – 2013-05-07 03:19:21