我的服务使用在另一个 DLL 中定义的类型 Foo,并且我的客户端也使用该 DLL 来获取该类型。我不想为该类型生成代理类,而是希望代理代码仅引用真实类型。我可以通过在正在运行的服务上使用 WSDL.EXE 生成代理、从中手动编辑部分类 Foo 定义并添加 Using 语句来手动完成此操作。如果可能的话,我想在没有手工编辑的情况下做到这一点。
似乎答案是使用 SVCUTIL.EXE 而不是 WSDL.EXE。有两个有趣的选项:/R 和 /ET。我尝试将 /ET:Foo 和 /ET:My.FQN.Util.Foo 和 /ET:www.my.com.the.servicenamespace.Foo 放入,并将 DLL 文件名添加到选项中。但是创建的 ServiceWithFoos.cs 代理类没有任何变化。Foo 的部分类定义仍然存在。
我在正确的轨道上吗?我究竟做错了什么?