我们开始开发一个新的Silverlight LOB应用程序,其中DataAccess将不基于EF,而是我们自己的DAL代码(由于遗留问题和其他无关原因)。
我们目前正在讨论是使用RIA Services还是简单的WCF Services作为Silverlight的门面层。
选项:
RIA服务和生成的代码:RIA服务将自动在我们的Silverlight项目中创建代理类,包括Domain Model和DomainServices。 这意味着我们的服务将需要继承自DomainService类,并且需要大量的工作和解决方案来允许我们的自定义模型正常序列化(因为我们不使用EF)。
WCF和共享库:我们将创建一个DomainModel库,该库将在Silverlight和我们的服务器代码之间共享(如此处所提供),从而使我们更加掌控我们的域类的外观以及它们在Silverlight上的呈现方式。我们的服务将保持干净,因为WCF不需要我们使用任何基类,并且可以更好地控制我们的服务如何公开。
我们目前正在讨论是使用RIA Services还是简单的WCF Services作为Silverlight的门面层。
选项:
RIA服务和生成的代码:RIA服务将自动在我们的Silverlight项目中创建代理类,包括Domain Model和DomainServices。 这意味着我们的服务将需要继承自DomainService类,并且需要大量的工作和解决方案来允许我们的自定义模型正常序列化(因为我们不使用EF)。
WCF和共享库:我们将创建一个DomainModel库,该库将在Silverlight和我们的服务器代码之间共享(如此处所提供),从而使我们更加掌控我们的域类的外观以及它们在Silverlight上的呈现方式。我们的服务将保持干净,因为WCF不需要我们使用任何基类,并且可以更好地控制我们的服务如何公开。
那么问题是 - 鉴于我们不使用EF,使用RIA服务的优点是什么,而使用WCF和共享域的缺点是什么?