我有一个wsdl文件,里面有xsd部分,里面有抽象元素和类型。当c#.net web forms项目在向前面提到的wsdl添加Web引用之后创建用于使用Web服务的代理类时,它将每个抽象类替换为具体的类。这是为什么?在wsdl中为Web服务使用抽象类型是否特别错误?
答案 0 :(得分:0)
当客户端构建Web服务引用时,它会读取消息并从消息中构建代理类。消息包含可序列化的DTO而不是原始对象。 DTO是表示原始对象的数据。抽象的面向对象概念与通过Web服务传输的DTO无关
那里有关于这个话题的大讨论:
WHY doesn't WCF 'properly' consume/expose abstract types when hosted as a web service