这个问题可能看起来很熟悉,但我与那些已经在这里和互联网上回答过的人一起工作,但没有找到答案:
编辑 目前,服务参考再次正常工作,但我仍在寻找长期解决方案。
在与 WCF Web 服务通信的 Windows Phone 应用程序上工作时,我注意到有时在 VS 2012 中的“添加服务引用”选项在 Reference.cs 中生成部分类,即使原始类位于由客户和服务通过项目参考。这似乎每隔几次服务再次发布或客户端编译时随机发生。可以想象,这会让很多“无法隐式转换类型”错误。大多数时候我只是在玩一些选项,再次删除和添加服务引用,重新启动 VS 等等,希望一些神秘的魔法会发生,迟早会发生。但这不是一种让我满意或我想永远使用的方式。尤其是昨天问题又出现了,一直到现在,奥术魔法都没有发生。所以这是我到目前为止所尝试的:
- 使用不同的选项和名称再次删除和添加服务引用(如共享所有程序集、共享指定程序集......)
- 在有和没有管理员权限的情况下重新启动 VS
- 从共享程序集中删除导致问题的整个类并再次添加它(在两者之间编译和发布)
- 查看 WCFTestClient 中与 VS 生成的命名空间不同的命名空间
- 以上所有在不同的机器上
我还在这里仔细研究了这个问题和其他类似问题。
尽管我学到了很多东西,但这些都没有让我能够自己解决问题。现在我正在使用 SVCUtil 生成代理类,但由于我对整个 WCF-Stuff 还很陌生,所以这还没有成功。如果我真的很感激
- 有人能够启发我究竟是什么让“添加服务引用”选项生成那些不需要的部分类以及如何避免它。
- 提供了有关如何正确使用 SVCUtil 工具来生成代理类并在 VS 项目中重用它的描述
- 有一种方法可以避免整个“从元数据生成代码”,我的意思是,我可以访问这两种实现
我真的很想在 VS 中解决这个问题,但随着越来越绝望,我愿意尝试做很多工作,如果这个问题以后不再发生的话。目前我正在研究第二种可能的解决方案。考虑到第三个,我正在阅读这篇文章,但在尝试之前,我想在这里提出第二个意见,这是否是解决我的问题的好方法,也许可以看看最近一篇涵盖该主题的文章。
对不起,文字墙,我已经在这方面工作了很长一段时间,而且知识很少,而且经过大量的尝试,得到了很多信息。