【问题标题】:How do I get my wcf service to update when I use the WCF Test Client?当我使用 WCF 测试客户端时,如何更新我的 wcf 服务?
【发布时间】:2009-04-20 16:33:20
【问题描述】:

我创建了一个基本的 wcf 服务,它并不比 helloworld 更复杂。我已经使用 WCF 测试客户端和我自己的客户端应用对其进行了测试,并且运行良好。

因此,我想为它添加一个方法,看看我是否可以尝试一些更复杂的东西。但是,现在当我尝试使用 WCF 测试客户端进行调试时,我的新方法并没有显示唯一存在的方法是原始方法。所以我尝试完全删除原始方法并再次测试,它仍然存在,我的新方法仍然丢失。

因此很明显,我修改后的服务并未更新 WCF 测试客户端用于测试的任何内容。

VS 2008 为允许 WCF 测试客户端工作而生成的临时文件在哪里。或者有人可以向我解释在我修改服务时如何刷新服务。

谢谢, 乔什

【问题讨论】:

    标签: visual-studio-2008 wcf wcftestclient


    【解决方案1】:

    您是否构建了修改后的服务?如果你不构建它,那么就没有什么可更新的了。

    【讨论】:

    • 是的,我完全删除了调试和发布 .dll 并重新构建,但它没有改变任何东西。
    【解决方案2】:

    检查以确保您的新服务和您的服务接口使用OperationContract 属性正确修饰。

    更新:看看WCF Test Client,看看你是否可以使用它来显示操作?

    【讨论】:

    • 我的界面是这样的。 [ServiceContract] 公共接口 IHelloWorld { [OperationContract] string GetLink(string uname); [OperationContract] string SayHello(string inputName); }
    • 我添加了更新。顺便说一句,将来最好将代码更新作为对您原始问题的更新来接收。
    • 感谢您的更新,我会记住未来的问题。
    【解决方案3】:

    我尝试了上述两种解决方案都没有成功,尽管我很欣赏这两个答案,因为它们都是非常好的检查方法。

    我发现最终解决问题的答案是简单地更新项目的版本号。我不知道为什么会这样修复它,但是在我这样做之后,我的新方法出现了,并且从那以后每次构建都继续出现。

    看起来这可能是 VS 2008 中的一个错误。

    【讨论】:

    • 这不是版本号,除非更改任意位会有帮助。版本号不是暴露在服务之外的概念。 WCF 测试客户端无法看到版本号。
    • 我并不是说 WCF 测试客户端出了问题。出于某种原因,Visual Studio 在我升级版本之前不会创建新的调试编译。我认为 WCF 测试客户端使用的正是 Visual Studio 所提供的。这就是为什么我认为这是一个 VS 错误而不是 WCF 测试客户端错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多