【发布时间】:2011-05-14 22:06:43
【问题描述】:
编码人员,我正在设计/实施(是的,同时进行)我自己的 CMS 原型。我使用 Asp.net、WCF 和 silverlight。到目前为止,我的项目有以下模型:
表示层 [silverlight & Asp.net/html] > WCF > 业务逻辑 > 数据库
我的模型的目标是使将来扩展应用程序变得容易。可以从任何可以使用我的 WCF 服务的应用程序访问该应用程序。
很遗憾,我在实施我的模型时遇到了一些困难。在我看来,如果我的解决方案中有三个项目:
解决方案:
- -Asp.net [表示层]
- -Silverlight [Presentation layer]
- -WCF [WCF 和业务逻辑]
然后我将不得不在我的表示层和我的 WCF 层中复制许多类。
这是一个场景:假设我的 WCF 中有一个 Post 类,它是我的 BL 的实现。在创建我的服务引用的客户端实例之后,我将能够从我的 PL 添加一个新帖子,使用如下行:client.AddPostAsync(post parameters)。但是,如果想通过调用 WCF 方法在我的 PL 中检索 Post 对象,那么我是否必须已经在我的 PL 中有一个 Post 类的实现,它与我的 WCF 中的 Post 类的副本完全相同!
因此,从长远来看,我的 WCF 层和 PL 中都会出现许多类的重复。我觉得有些东西我不明白,或者我在模型中弄乱了一些东西?请帮忙!
【问题讨论】:
-
当您向表示层添加服务引用时,它会为您生成所有数据协定。您不必再次定义它们。如果我遗漏了什么,您能否给出您的 WCF 方法的完整方法原型?
标签: asp.net silverlight wcf architecture