【问题标题】:Best Pattern for ASP.NET MVC 5 With EF 6.2?带有 EF 6.2 的 ASP.NET MVC 5 的最佳模式?
【发布时间】:2019-01-18 12:17:32
【问题描述】:

我正在使用 .net 堆栈开发大型企业应用程序,目前我正在使用分层方法。我在数据层面临的主要问题是因为我使用的是静态连接上下文并且存在以下问题。

  1. 由于静态行为,无法使用并行调用。
  2. 无法使用同步方法。
  3. 缓存可能还有其他问题

所以现在我们决定改变我们的数据层,我们需要考虑一些事情,比如存储库和工作单元,但是我们不确定我们面临什么样的问题,因为我们有拥有 600 多个表的企业级应用程序.

为了写出这么大的故事,我想从社区获得帮助,我应该遵循哪种方法。

请提供任何合适的链接或想法。

【问题讨论】:

  • 随时加入不可根除的存储库/UoW 讨论。只是,请不要在这里。这些问题在 Stack Overflow 上是题外话。
  • 永远不要在多用户应用程序(例如 Web 应用程序)中使用静态 EF 上下文。 EF 维护状态,当多个用户访问数据时,它可能会发生冲突并破坏数据上下文。考虑保存一个用户,如果同时保存两个人,只有一个人会胜出。

标签: asp.net model-view-controller entity-framework-6


【解决方案1】:

首先使用静态数据库连接是疯狂的:) 你的设计师对静态方法的想法非常糟糕。我认为 NTiear 架构是一个很好的起点。将来您的另一个问题可能是您的数据库系统的规模。可能您使用垂直缩放方法。如果正确,您必须在数据库系统上管理应用分布式方法,例如复制和分片。 nosql 解决方案也可能有另一种选择。 前年搜过这个题目,写了一篇文档,可以在medium看到

还有一个关于 monolotihc 与微服务的问题。您可以在 medium 等上找到很多文章。这是them 之一。

另外,我在 github 上发布了一个示例项目,关于 N-Tier-Architecture-with-Generic-Repository--Dependency-Injection-And-Ninject

你可以检查

祝你好运;)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-11
    • 2021-08-21
    • 2015-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多