【发布时间】:2013-06-17 07:45:56
【问题描述】:
我有一个 wcf 服务,我在其中执行一些特定于业务的流程。我从 mvc3 Web 应用程序中使用此服务。由于我仍在开发过程中,我通过添加新方法或更改方法的签名来更改我的 Web 服务。然后我需要在 Web 应用程序上更新我的服务引用,但据我所知,当我这样做时,引用类是从头开始创建的。这里的问题是,我想在服务引用中添加一些逻辑。但在这种情况下,每次我更新服务参考时,我添加的其他部分都会丢失,我需要手动复制粘贴并调整我的代码。解决这个问题的正确方法是什么?
【问题讨论】:
-
使用部分类 - 将您想要保留的代码(您的自定义代码)放入其中。当您更新您的参考时,您仍将拥有您的自定义代码。
-
绝对,永远,永远,永远不要手动更新生成的代码。所有更改将在第一次重新生成时丢失。代理类应该是无逻辑的。
-
在发布这个问题后,我实际上想出了解决方案:) 但没有回答,因为我可能仍然会得到很好的答案。谢谢。
-
我个人试图完全回避这个问题。生成服务引用只是创建一组映射到服务器上的类的类。如果将这些类和接口拆分为“合同”程序集,则服务器端代码和客户端代码都可以引用相同的源。这通常可以大大缓解部署问题。唯一的缺点是,这只有在您的团队同时处理客户端和服务器的源代码时才有效。
标签: .net wcf web-services service-reference