草庐IT

wcf-binding

全部标签

c# - WCF:单个方法或接受 xml 的通用 ProcessMessage 方法

我的公司正在开发一个应用程序,它通过TCP套接字和xml消息从另一家公司接收数据。这被传送到单个网关应用程序,然后将其广播到我们组织中不同机器上同一内部应用程序的多个副本。WCF被选为处理内部通信(内部双向)的技术。开发人员考虑了两种方法。公开的个别方法每个不同的WCF服务网关收到的消息应用。网关应用程序将解析传入的外部消息并调用适当的WCF服务方法。这传入的XML将被翻译进入DataContractDTO并提供作为适当WCF的参数方法。内部应用公开了一个WCF服务方法“ProcessMessage”接受Xml字符串消息作为争论。内部应用程序将解析然后反序列化收到的xml并相应地处理它

xml - WCF 数组序列化

我正在使用一个以整数数组作为参数的WCFOperationContract。它正在使用basicHttpBinding。我注意到从使用VisualStudio“添加Web引用”生成的客户端生成的SOAP包括xmlns:100101102...etc这将增加具有大数组的序列化流的大小。有什么办法可以消除这个xmlns属性吗?对于WCF客户端,生成的SOAP看起来更像我所期望的:100101102...etc.. 最佳答案 不幸的是,这实际上是客户端代理的功能,而不是您的服务。在此示例中,您正在查看使用XML序列化与数据协定序列化的客户

c# - 使用 WCF 从 MSMQ 队列接收任何 XML 消息?

我有一个MSMQ,它从各种来源接收XML格式的消息。我有一个WCF端点(使用MsmqIntegrationBinding),我想接收这些消息。我定义了以下内容:[ServiceContract(Namespace="http://TestApp.MSMQService",ProtectionLevel=ProtectionLevel.None)][ServiceKnownType(typeof(String))]publicinterfaceIMsmqReceiverService{[OperationContract(IsOneWay=true,Action="*")]voidSub

xml - RESTFUL WCF 删除所有 xmlns

我将我的DataContracts命名空间设置为“”,这删除了一个命名空间,但我必须删除另一个:xmlns:i="http://www.w3.org/2001/XMLSchema-instance"如果没有其他方法,我如何在返回之前序列化我的类并破解命名空间?我必须这样做才能使用另一家公司的API。 最佳答案 除了丢弃WCF之外,您唯一的选择是更改您的服务契约(Contract)以返回一个流并自己进行XML序列化。您仍然可以使用数据协定序列化程序,转换为字符串并去除所有namespace,然后转换回流以返回,但这听起来很糟糕。如果您

c# - WCF Web 服务响应 XML 文件

我在WCF中使用数据协定,但在xml文件中发送了一些不需要的响应标记,我不确定如何修改数据协定类以避免发送不需要的响应字段。在下面的XML文件中,所有加粗和斜体的文本都是不需要的。谢谢。***1325661***200******1201TestLnTSTCityTST123456TSTCitypinu***0***TSTMAILED71926389001019******123456132566110121MantDriveTestCityTest123456TestCityKris***0***TestMAILED71926389000026******12345613256612

c# - 将原始 XML 绑定(bind)到 WPF 中的数据网格

我想将原始xml文件绑定(bind)到数据网格,并使用C#在WPF表单上显示它。我计划使用数据集来存储我的xml,然后将数据集绑定(bind)到数据网格。我的xml看起来像这样john49515Nouncompletedkonj50115Nouncompleted我计划使用两个数据网格,一个用于,一个用于与列id、name、movesLeft、won、completed绑定(bind)到元素 最佳答案 最好的起点是XmlTextReader类(System.Xml)我为此找到的最佳资源直接来自MSXmlTextReaderLink它

xml - Spring XML 绑定(bind)

我正在尝试创建一个RESTful服务,该服务接收传入的XML并将结果解析为业务对象。我有XML和业务对象。有没有一种方法可以根据将xml引入RESTful服务并自动创建业务对象来执行数据绑定(bind)。目前我正在手动执行此部分,我很确定这不是执行此操作的最佳方法。我在想也许有办法映射xml并传输到对象。谢谢。 最佳答案 您可以使用OXM(例如JAXB)和SpringWebMVC的@RequestBody注释来完成此操作。下面是一个简单的RESTful示例,用于从XML有效负载创建用户对象:@RequestMapping(value

xml - 如何使用我的 WCF HTTP REST 服务支持带有或不带有命名空间的 XML

我有一系列看起来像这样的对象:namespaceMyNamespace{[DataContract(Namespace="")]publicclassMyClass1{[DataMember]publicstringMyProperty{get;set;}}}我有一个公开WebInvoke的方法,看起来像这样(非常简化,因为现在实际上什么都不做,但仍然适用于此测试)[WebInvoke(UriTemplate="",Method="POST")]publicMyNamespace.MyClass1GetItem(MyClass1postedItem){returnpostedItem;

java - WSDL 中忽略的 JAX-B 全局绑定(bind)

我有一个WSDL,我从中生成NetBeans中的类。未更改的副本有日期,这些日期生成为XMLGregorianCalendar。我试图覆盖该行为并插入一个全局绑定(bind)标记,以便它生成一个JavaDate。但是,无论我将绑定(bind)标记放在哪里(如下所示),它都会被忽略,并且将XMLGregorianCalendar用作日期类型。有人可以告诉我我是否在正确的轨道上,以及在哪里放置覆盖?下面也是WSDL的整体布局。经过编辑的WSDL,显示了我认为相关的部分: 最佳答案 我认为您缺少上的命名空间前缀元素-它需要位于JAXB命名

xml - Delphi:XML 数据绑定(bind)(编码)

我需要生成一个XML文件,我有它的XSD格式的架构。我使用XML数据绑定(bind)向导创建了类,但是:要求之一是xml的编码标记设置为“utf-8”。我之前在直接使用IXMLDocument创建xml时这样做过:varxml:IXMLDocument;..xml.Encoding:='utf-8';XML的第一行变为但是现在,使用数据绑定(bind)向导,我尝试了类似的操作:varxml:IXMLAuditFile;..xml.OwnerDocument.Encoding:='utf-8';但是那个编码没有显示在当时的xml文件中:在使用XML数据绑定(bind)时,还有其他地方我应