当Entity Framework实例化新数据库时,是否可以在表中添加列(或执行某些SQL),而不在DbSet中使用的模型中定义它?
我使用Entity Framework和Elastic Scale Client为SaaS应用程序构建原型,并希望使用行级安全性,因此需要一个列来标识我的租户。所以我认为,当我向系统添加新租户时,如果我只能使用EF初始化程序添加此列,那就太好了。
答案 0 :(得分:0)
如文档here中所述,您可以在拥有DBContext时执行sql。
来自文档:
using (var context = new BloggingContext())
{
context.Database.ExecuteSqlCommand(
"UPDATE dbo.Blogs SET Name = 'Another Name' WHERE BlogId = 1");
}
您可以使用它来修改结构,而不必在EF中定义实际结构。