我有一个带有表,关系,键,索引,安全性,发布配置文件等定义的SQL Server数据库项目,并且我还有一个ASP.NET Core MVC项目。
问题是我想使用Entity Framework进行DML操作,但要注意的是,我只能使用存储过程(可能从安全角度来看,应用程序帐户仅对这些存储过程具有执行权限,并且仅在特定表格上读取)。
我发现EF可以像本例一样通过模型构建器将.SaveChanges()
方法映射到存储过程
modelBuilder.Entity<SubjectArea>().MapToStoredProcedures();
从MS文档https://docs.microsoft.com/en-us/ef/ef6/modeling/code-first/fluent/cud-stored-procedures
它也可以使用migration
命令生成它们。我对迁移没有经验,但是我只想为存储过程创建生成SQL,并将此脚本(尚未运行)添加到SQL Server数据库项目中(解决方法是将迁移运行到单独的数据库中并生成脚本从数据库导入到数据库项目中,但这似乎不太好。
是否有可能做到这一点?