繁体   English   中英

EF6将映射从表更改为存储过程

[英]EF6 Change mapping from table to stored procedure

我有一个已完成且正在运行的应用程序。 但是最近发布的安全说明指出,每个数据库访问都必须通过存储过程来完成,并且它也适用于用户和应用程序。

该应用程序在ASP .NET MVC框架(版本4)上运行,并已通过ORM声明了这种方式

[Table("TableName1")]
public class TableName1
{
    [Key]
    public int ID { get; set; }

    [MaxLength(250), Index("IX_NameCountry", 1, IsUnique = true, IsClustered = false)]
    public string Name { get; set; }
    ...
}

public ICollection<TableName2> TableName2
        {
            get
            {
                return Database.SqlQuery<TableName2>("SELECT * FROM dbo.TableName2").ToList();
            }
        }

我是MVC和EF的初学者,但我发现EF6支持存储过程映射。 重写应用程序最简单的方法是什么? 我将非常感激一个示例,说明如何重新映射表映射:-)

谢谢

请参阅: 如何在Entity Framework 6中调用存储过程(代码优先)?

顺便说一句,根据您的应用程序大小,这可能是一项巨大的工作,听起来像是某人对某事做出的反应。

我会巧妙地回应一下,解释说最好是花一些资源为您(和您的团队)检查现有的代码库,以解决数据库问题并修复任何安全漏洞。 要求您的应用经过笔测试。

业务/用户可能会有风险,因为这可能会引入错误-考虑所有您将不得不转换为SQL的LINQ表达式:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM