【问题标题】:Add EF6 to a razor class library project to be shared by many BLAZOR projects?将 EF6 添加到 Razor 类库项目以供许多 BLAZOR 项目共享?
【发布时间】:2020-10-02 17:20:32
【问题描述】:

是否可以将 EF6 添加到剃须刀类库?目标是让其他 BLAZOR 项目共享许多组件,但其中许多控件需要访问数据库,这对于该解决方案中的所有项目都是相同的。另外,我假设数据库访问将通过控制器进行,因为它不可能作为服务注入。这是正确的吗?

【问题讨论】:

    标签: entity-framework-6 blazor blazor-server-side asp.net-blazor


    【解决方案1】:

    是否可以将 EF6 添加到剃须刀类库中?

    是的,但您会立即将该库限制为 Blazor 服务器端。

    其中很多控件需要访问数据库

    这不是一个伟大的架构

    我假设数据库访问将通过控制器

    对于服务器端不是必需的,您可以将 DbContext 注入到您的页面和组件中

    如果您的组件强烈依赖于实体类和业务逻辑,那么 Razor 类库可能不是最佳选择。

    如果您确实需要,请使用与存储无关的模型和服务接口创建一个特定层。它是the Onion architecture 中核心的 2 层。

    您的组件可以依赖于接口,而主应用程序可以实现它们。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-29
      • 2018-12-16
      • 2011-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-22
      相关资源
      最近更新 更多