对数据库的任何想法/评论,超过3,000个存储过程查询/访问超过1,400个表(过度标准化)。真的想使用像Entity Framework这样的技术,最好是4.0,并从那些sproc中获取业务逻辑吗?
欣赏任何真实的实践经验&如果你决定分享反馈。这是我继承的数据库,并且真的觉得是时候放弃sproc了以获得更好的业务层。
答案 0 :(得分:1)
不是你的问题的答案,但你仍然可以在实体框架中使用sprocs:see here,基本上sprocs映射到你的上下文对象的方法调用。
我的个人体验实际上与你的相反:我通常试图远离EF,因为它有这种与你的应用程序紧密结合的倾向。关于sprocs的好处是它们允许一定程度的解耦(例如,我可以在不修改客户端代码的情况下更新数据库)。但这当然只是我个人的意见。
答案 1 :(得分:0)
这取决于您所在的商店。我曾在许多商店工作,这些商店对是否利用sprocs或应用程序层中的代码存在矛盾的强烈意见。问题是:你是否有更多的人专门维护plsql / tsql?
我个人曾经讨厌过sprocs,喜欢orm工具等等。现在我更喜欢保持应用程序代码干净。这只是在数据库中变得非常舒服之后。让数据库代码存在于其原生环境中,并提供所有可用的工具。
答案 2 :(得分:0)
在实践中,你最终会在几年内重构EF,而你的存储过程仍然可以在最新最好的客户端层中随时使用。客户端不可知,封装等