服务引用在引用中自动生成类.cs而不是作为内部生成

本文关键字:引用 内部 自动生成 cs 服务 | 更新日期: 2023-09-27 18:30:38

我正在向我的项目添加服务引用并选择"内部"访问选项。在 15 个 Web 服务中,有 3 个是顽固的,自动生成的参考中的大多数类.cs都是作为公共的(即使我选择了"内部")

我已经在 Web 参考中浏览了我的课程,遇到了这个问题,没有什么真正跳出来作为有问题和正在工作的那些之间的主要区别。

有谁知道此问题的常见原因? 例如可能导致此问题的类的 Xml 属性或其他任何内容?

服务引用在引用中自动生成类.cs而不是作为内部生成

问题恰恰在于此。Xml序列化程序无法序列化内部类型。Microsoft在标题为"生成的类的访问级别设置不起作用"的部分中简要提到了此限制。

在配置中设置生成的类的访问级别选项"内部"或"友元"的"服务引用"对话框可能并不总是工作。即使该选项似乎在对话框中设置,生成的支持类将生成访问级别公共。

这是某些类型的已知限制,例如使用 XmlSerializer 序列化的类型。

据我所知,对于自动生成的服务引用,这个问题实际上没有可接受的解决方法。但是,数据协定序列化程序不受此限制的限制,因此可以在其他方案中使用。

你必须和Microsoft一起接受这个。假设尚未有请求的解决方案因"无法修复"而被拒绝。