gpt4 book ai didi

c# - WebReference 生成的命名空间

转载 作者:行者123 更新时间:2023-11-30 22:26:27 25 4
gpt4 key购买 nike

我真的被这个问题困住了:我在 BigStorage 类中有一些数据以及 GUI 中的一些操作。我需要将数据从此类传递到 Web 服务,然后收到答案并进行处理。

我已经编译了一个包含这个 BigStorage 类定义的 dll 并将它提供给我们的网络管理员 - 他使用了这个类并将结果返回给我。但我收到了这个结果webRefName.BigStorage,它不等于我的 BigStorage(它们有不同的命名空间)。

顺便说一下,此 webRefName.BigStorage 中的一个私有(private)字段是 typeof DataSet(?!),而在我的 BigStorage 中它具有我自己定义的类型(我已添加xml 序列化)。

有没有办法做类似下面的事情:

webRefName.BigStorage bS = (webRefName.BigStorage) bSfromLocalProject;
//where bSfromLocalProject typeof BigStorage

另外,为什么 Reference.cs 中的这个字段(见上文)是 DataSet?

最佳答案

从网络引用生成的类型是从可用元数据 (wsdl) 生成的浅层代理类型。它们与原始类型不同,不能互换使用。命名空间可以配置为 Web 引用属性的一部分,但将其设置为相等将无法正常工作。

如果您在另一端使用原始程序集,请考虑使用网络服务引用(即 WCF)。这具有重用现有类型的选项,这意味着它可以使用现有 dll 引用中的类型。然后它们就可以完全互换(或者更准确地说,它们是相同的东西 - 所以没有什么可以互换的)。

关于c# - WebReference 生成的命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11776985/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com