新しいエントリを作成せずに、データベースで生成された ID 列をデータベースにシードするにはどうすればよいですか? 例えば:
public class Stuff
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }
}
およびシード方法:
var project1Id = new Guid("8853EDF3-BA20-43F8-B8D6-06984116CF8C");
context.Projects.AddOrUpdate(p => p.Id, new Project
{
Id = project1Id,
Statuses = new List<Status>
{
new Status { Comments = "Comment 1", LastUpdated = DateTime.Now, Type = StatusType.Internal },
new Status { Comments = "Comment 2", LastUpdated = DateTime.Now, Type = StatusType.Business }
}
});
問題は、指定した GUID を無視し、実行するたびに新しい GUID を自動生成することupdate-database
です。私はVS2012とEF5を使用しています。