使用WCF Rest服务存储库模式并使用LINQ to OBJECTS返回IQUERYABLE?

时间:2010-09-25 11:11:05

标签: asp.net-mvc wcf linq rest repository-pattern

我希望创建一个存储库模式,但使用WCF Rest服务来控制数据访问。任何人都可以确认或帮助我的思考/配置。

  1. ASP.NET控制器>>呼叫服务(不是休息服务,而是存储库模式的服务)
  2. 存储库模式服务>>调用存储库
  3. 存储库>>调用WCF Rest Service来接收数据。
  4. 这个设置是否正常,或者我应该删除Repository层并让Repository服务直接调用REST服务吗?

    有没有人做类似的设置?

    我很想听到评论?

    基本上我的Rest Service(WCF)会返回XHTML ...

    所以在我的存储库层中,我如何将从Rest Service返回的内容转换为IQUERYABLE?我假设我需要将ReadAsDataContract做成一个类(数据契约),然后使用LINQ到OBJECTS?这让我有点困惑

    当然,通常情况下,将IQUERYABLE从存储库层返回到服务层

    然后服务层以TOLIST或类似方式返回到调用客户端normal。

    非常感谢任何人的任何输入。

    由于

    修改

    在重新考虑之后,我认为我做错了...我应该基本上将存储库的服务层转换为WCF REST服务......这样我的其他客户端可以调用我的休息服务吗? / p>

    我想我保留了Repository层,但我可以让它为我的数据访问调用数据服务层(技术上是另一个休息服务)..

    这是否更有意义?

1 个答案:

答案 0 :(得分:2)

尝试隐藏存储库后面的REST层,您尝试实现distributed objects。 REST从未打算作为实现此类架构的方法。

如果你真的想做REST,你会以错误的方式去做。但是,在这种追求中你并不孤单。


更新

我看到域对象存储库的唯一位置是在REST接口后面的服务器上。您在客户端上拥有的只是媒体类型处理程序和用户代理脚本。