Ria服务替代WCF服务

问题描述:

我们目前有一个Silverlight 2.0应用程序与一组WCF Web服务进行通信。这些服务与其他WCF服务进行通信以获得业务逻辑。Ria服务替代WCF服务

Client    DMZ      Intranet 
Silverlight -> WCF Web Service Gateway -> WCF Biz service -> DB 

WCF Web服务网关驻留在DMZ中。

我们看到Ria服务可以取代我们的WCF网络服务网关,但这意味着它将安装在我们的DMZ中并且可以访问我们的数据库......这是否安全?

我们似乎也放弃了我们的业务逻辑WCF服务......我需要将业务逻辑放在Ria服务中(因为它已连接到数据库并拥有域...)。

Ria服务的推荐模式是什么?它适合哪里? 已经投资WCF Web服务的公司的方法是什么?他们可以使用RIA吗?

我们正在研究这个选择,是我们会暴露Web服务和利雅...

Silverlight -> WCF web service - > WCF biz service -> DB 
      -> Ria services -> DB 

有何评论?我也怀疑是否有人在生产中实际使用Ria ...

您的提案体系结构中Silverlight应用程序调用 WCF Services和Ria服务对我来说听起来都很公平。

假设你的数据库有一个员工实体。

我能得到这个方法启动和运行,但有一些问题

  • 假设“的WCF服务BIZ”访问和修改员工。
    • 它是否直接从数据库中获取这些数据? (如果是这样,EntityFramework edmx模型之间共享“WCF商业服务”和ria?)
    • 反过来使用RIA层,因此EmployeeRiaProxy?
    • ..?

  • 假设你想使用Employee实体的“WCF服务BIZ”经营合同
    • 在纯粹的SOA架构,这不应成为可能吗?
    • 在EmployeeDto中使用纯粹的DTO数据合同风格方法?
    • 您应该使用Employee还是EmployeeRiaProxy?
      • 使用员工是不可能的,因为Silverlight应用程序不知道它 (或将导致另一EmployeeWCFProxy类型在客户端上创建)
      • 使用EmployeeRiaProxy是可能的,但绑你的经营合同到 Ria的代理(设计相当差),并假设该服务使用RIA数据访问

还是应该一切都通过这个RIA层?你从哪个方面依次称之为“WCF商业服务”?



欢迎任何意见!

Koen