我们的客户向我们发送了一个用于其Web服务API的WSDL文件。我们使用Visual Studio的“添加服务引用”来使用它。
但是:我们只想生成服务代理,而不是数据契约类。我们希望重用已引用的程序集中已有的类。
答案 0 :(得分:2)
这取决于“添加服务参考”的高级...部分中的以下选项:
也会映射到/r
中的/reference
/ svcutil.exe
选项。
这默认为启用,因此如果它不起作用:您的类型很可能不是完全匹配。确保完全匹配的最简单方法是从两个项目引用相同的库dll,或者最坏情况相同的.cs文件(最好是dll引用,IMO)。数据协定命名空间和名称是这里常见的罪魁祸首,必须与完全匹配(必须与成员一致)。
答案 1 :(得分:1)
为项目添加数据合同类(甚至更好地为数据合同类创建新库并在服务和客户端重用),包括服务引用。添加新服务引用或更新现有引用时,请选择“在引用的程序集中重用类型”。
答案 2 :(得分:0)
这是旧的,但我对此有一点怀疑。 我可以在添加服务引用时访问类,这没关系 在Visual Studio中使用同一解决方案中的所有项目并添加“项目”引用时,我看不到这些类。
有没有办法使用Visual Studio中同一解决方案中的所有项目来测试客户端代码?
感谢