gpt4 book ai didi

c# - 使用存储库模式实现 Web 服务的正确方法是什么

转载 作者:行者123 更新时间:2023-11-30 12:43:16 26 4
gpt4 key购买 nike

我即将开始一个项目,该项目需要一个连接到网络服务的网站。 Web 服务将从数据库中检索数据,并将其返回给网站。

我的问题是关于如何正确地将业务问题与数据访问分开。

可以利用存储库模式来分离服务。然后在服务调用实现中,我可以以实体的形式从存储库中获取所需的数据,然后通过网络将其返回。

同样,我可以在网站上做同样的事情。使用存储库隐藏从服务获取数据并将其序列化为一个或多个实体的实现细节。

但是,我对这种方法的主要问题是服务和网站都将为其实体定义。是否有一种我可以使用的模式允许我一次定义这些实体,或者这种架构是否偏离了常见/最佳实践。

我应该提一下,我使用的技术是带有 c# 的 asp.net,我没有使用 Entity Framework 。

最佳答案

在完全相同的解决方案中创建一个 WCF 数据服务和一个客户端。 Visual Studio 将允许在客户端使用您在服务端定义的完全相同的类和模型。

好处:如果你正确地使用了这个概念,IQueryable 将被编码到客户端(而不是结果),所以你甚至可以在客户端进行临时查询,(假设你的存储库的方法返回 IQueryable)只是结果会在电线中传播。这对于分页场景也很重要。

开始阅读 here

关于c# - 使用存储库模式实现 Web 服务的正确方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31704813/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com