将列添加到数据库,而不在具有实体框架

时间:2017-07-24 13:16:04

标签: entity-framework-6

当Entity Framework实例化新数据库时,是否可以在表中添加列(或执行某些SQL),而不在DbSet中使用的模型中定义它?

我使用Entity Framework和Elastic Sc​​ale Client为SaaS应用程序构建原型,并希望使用行级安全性,因此需要一个列来标识我的租户。所以我认为,当我向系统添加新租户时,如果我只能使用EF初始化程序添加此列,那就太好了。

1 个答案:

答案 0 :(得分:0)

如文档here中所述,您可以在拥有DBContext时执行sql。

来自文档:

using (var context = new BloggingContext()) 
{ 
    context.Database.ExecuteSqlCommand( 
        "UPDATE dbo.Blogs SET Name = 'Another Name' WHERE BlogId = 1"); 
}

您可以使用它来修改结构,而不必在EF中定义实际结构。