【问题标题】:svcutil.exe excludetypes problemsvcutil.exe 排除类型问题
【发布时间】:2010-05-18 03:34:55
【问题描述】:

我的服务使用在另一个 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 的部分类定义仍然存在。

我在正确的轨道上吗?我做错了什么?

【问题讨论】:

    标签: c# soap wsdl svcutil.exe


    【解决方案1】:

    [DataContract(Namespace = "http://anything.here")] 添加到您的Foo 类型,然后使用带有/r 选项的svcutil 来获取包含Foo 的库的路径。这样 svcutil 应该会看到相同的合约命名空间并正确映射 Foo。

    【讨论】:

    • 这不太奏效。不幸的是,这个网站不允许我发布错误信息!在过去的 30 分钟里,我一直在尝试各种事情,但它总是拒绝我的输入。当我点击它时,提交按钮变灰。错误消息中涉及 URL - 可能 Stackoverflow 认为我正在尝试破解它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-29
    • 2010-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多