存储库或WebAPI

时间:2015-03-20 04:07:13

标签: linq asp.net-mvc-4 asp.net-web-api repository-pattern

我有SQL数据库和MVC和SPA前端的多层应用程序。我的Web应用程序所需的一些数据不会驻留在同一个SQL服务器上,而有些数据驻留在同一个数据库中但位于不同的模式中。架构具有不同的权限。不允许使用LinkServer。例如,数据分散在以下位置:

  1. 患者数据在server1.PatientDb.Person.patients上,
  2. 提供商数据位于Server2.ClinicalDb.staff.doctors
  3. 护士数据在Server2.ClinicalDb.staff.nurses
  4. 我想让所有患者看到医生和护士的信息。理论上我可以在存储库层中执行此操作,并将所有数据拉入2 edmx(实体框架),使用LINQ的Include()连接以在将IQueryable视图模型返回到单个WebAPI控制器之前构建分层数据。但是,为了保持分离关注,我还可以在WebAPI层对数据进行整形。我将有3个WebAPI服务。每个都处理一个实体,没有连接。然后,我将有另一个消费的WebAPI控制器调用3个WebAPI中的每一个,并在返回到UI层之前组装视图模型。我想知道哪种设计是最不依赖的最佳实践。

0 个答案:

没有答案