首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用EF6在MVC 5中实现业务逻辑

如何用EF6在MVC 5中实现业务逻辑
EN

Stack Overflow用户
提问于 2017-02-20 04:10:58
回答 4查看 577关注 0票数 0

我读过MVC5与EF6 DB第一教程。使用本教程,它将生成代码(控制器和视图)。

我在VS中创建了3个项目:

代码语言:javascript
复制
+ AdminWebSite
+ PublicWebSite
+ EntityFramework

我问过,我应该在哪里实现业务逻辑,并共享多个网站(Admin & Public)?

业务逻辑可以包括:

  • 数据库逻辑(即多表事务)
  • 逻辑与SharePoint信息
  • 电子邮件服务器逻辑

编辑

错误,应该是3个项目,而不是3个解决方案,但应该是类似的情况,AdminWebSitePublicWebSite都有添加EntityFramework作为参考。

编辑2

在MVC3之前,我将创建一个包含所有业务逻辑的类项目,以及Repository类。这样每个WebSiteWebServices都可以使用相同的业务逻辑(但我不确定这是否是最佳实践)。

但是,当使用MVC5迁移到EF6时,存储库和工作单元似乎就消失了。而且不想为每个表实现存储库,有些表只是为了直接CRUD而没有业务逻辑。

我希望这能澄清is Too broad

EN

回答 4

Stack Overflow用户

发布于 2017-02-20 04:13:41

看看这个:http://dombrovsky.github.io/EntityHooks/

它看起来像一个设计用于使用EF6的框架。它应该允许您在某个事件发生时编写自定义业务逻辑,比如插入或更新记录时。

票数 0
EN

Stack Overflow用户

发布于 2017-02-20 04:19:15

您可以在解决方案下利用Projects

我通常将数据库层放在单独的项目(类库/DLL)中,并让其他项目引用它。这样,您只有一个ORM (实体框架)的副本,简化了数据库模型中的任何更改。我还创建了一个数据库项目(如果是SQL服务器),它保存了实际的模式定义,包括表和存储过程。这是对模式进行更改并进行部署的一种很好的方法。

任何时候,只要代码中有足够大的部分可以重用,通常都可以将其作为类库,并让客户端项目引用它。

票数 0
EN

Stack Overflow用户

发布于 2017-02-20 04:59:02

一种解决方案包括网络项目、、项目DAL项目,Web项目包含发布和管理。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42336354

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档