问题标签 [datacontract]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wcf - DataContracts 的 WCF 重定位
这是一个功能齐全的 WCF Hello World 程序。即我能够运行这个程序没有任何异常。
如您所见,AccountInfo - 数据合约由客户端和主机共享。
我只需要将数据合同保留给主机/服务端。
客户端应该只看到 DataContracts 的接口(如IAccountInfo
)。
我应该如何修改我的程序来介绍IAccountInfo
?
c# - WCF:仅在 json 上返回必要的属性
由于性能调整,我想只返回必要的属性。有没有可能/解决方法?伪/示例代码理解:
和服务:
wcf - WCF:将字符串数据成员反序列化为 int
这个我真的想不通!(如果可能的话)。我们从 WCF 服务接收产品信息。产品数据合同有一些定义为字符串(但实际上是整数)的成员,但我们希望将它们作为整数处理。
当我将客户端合同中的数据类型从 string 更改为 int 时,我的问题就解决了。但是,有些产品有一个 string.Empty 值,不能反序列化为 int。有没有办法解决?真的不想在反序列化后转换我的结果集......
wcf - WCF DataContract - 标记成员 IsRequired=false
我的合同如下:
究竟是什么IsRequired
意思?是否IsRequired=false
意味着我可以在未初始化的情况下通过网络传递一个实例,MyObj
或者StrB
这是否意味着我可以在不存在的情况下通过网络传递一个MyObj
实例StrB
?
如果是后者,我如何在MyObj
without的实例上实际实例化 + 发送StrB
?
wcf - 如何从实现 IXmlSerializable 的类中避免 WCF WSDL 中的 processContents="lax"?
我有一个以合同优先方式编写的 wcf 服务。由于架构中的一些元素使用属性,我必须为此创建一个自定义序列化(使用IXmlSerializable
)。下面是 wsdl 输出中的架构、类以及架构的片段。
我的问题是,即使我为我的 IXmlSerializable 类呈现 xsd,该模式也不包含在 wsdl 中。它们只是用processContents="lax"
. 这对我的服务的消费者来说似乎是个问题,因为他们不能使用他们的向导来创建客户端。
有没有人遇到过这个问题?无论如何控制wsdl输出以避免这种情况。我在使用消息合约和数据合约时遇到了相同的行为。
集合和项目的架构:
集合类:
物品类别:
服务渲染的xsd:
c# - 返回自定义类的 WCF 服务在 Reference.cs 中生成错误
我在 Visual Studio 2008 中有一个 WCF 服务项目,其中包含大约 12 个方法,其中一些返回基本类型,如 bool 或 string。我还有一个引用已发布 WCF 服务的 Visual Studio 单元测试项目。当所有返回类型都是原始类型时,测试项目编译成功。
如果我向返回自定义类的服务添加新方法,发布它并更新测试项目中的服务引用,它不会编译。错误是: -
- “PublisherFaultException”类型已包含“原因”的定义。
- “PublisherFaultException”类型已包含“PropertyChanged”的定义。
- 类型“Publisher.Test.LibraryReference.PublisherFaultException”已经定义了一个名为“RaisePropertyChanged”的具有相同参数类型的成员。
全部在自动生成的 reference.cs 文件中。
WCF服务方法的约定是:-
并且 Page 类具有 DataContract 属性,它的公共属性具有 DataMember 属性。
我不愿意修改 Reference.cs 文件,因为每次更新服务时我都需要这样做。
有谁知道为什么会这样?
斯图尔特。
c# - 如何使用 DataContract 添加 XML 属性
我有一个要序列化的简单类。
这将启动以下 XML:
我想要的是:
如何为 XML 元素添加属性?
提前致谢。
serialization - 将 DataMember 添加到 DataContract 的不同命名空间
有了XmlSerializer
我可以让我的成员在与父类型不同的命名空间中。
我可以做同样的事情DataContractSerializer
吗?
我想要以下 XML:
这可能在 with 中DataContractSerializer
吗?
c# - WCF:在双方强制执行相等的 DataContracts
我想知道是否可以让 WCF 确保连接两侧的 DataContracts 完全相同(如果不是,则在尝试连接时抛出异常)。
例如,想象一下这个服务:
现在想象一下服务已经更新,现在支持一个新的状态,“橙色”。客户端仍然具有如上所示的 DataContract。
现在我希望客户端对服务的每次调用都失败,因为客户端和服务没有使用相同的 DataContract。这可能吗?
提前感谢您的帮助!
wcf - 带有抽象 DataMember 数组的 WCF DataContract
我无法使这种情况发挥作用。这是模式-
我尝试使用 KnownType 或 KnownServiceType 注释几乎所有内容,但无济于事。
如果我将 BaseT 设为抽象,则会收到反序列化错误“无法实例化抽象类”。如果我使 BaseT 具体化,我不会收到反序列化错误。相反,当我将它转换为 ChildT 时,我得到“无法将 'BaseT[]' 类型的对象转换为 'ChildT[]' 类型”。