WCF数据合约在java或非.net客户端工作吗?

本文关键字:客户端 net 工作 或非 java 数据 WCF | 更新日期: 2023-09-27 18:14:47

我正在开发一个wcf服务(basicHttpBinding),它将由非。net客户端(例如Java客户端)使用。但现在我想知道,DataContract将支持java和其他非。net客户端吗?如果不是,我的返回类型应该是什么。基本上我的服务将被非。net客户端使用,我不知道非。net客户端是否支持DataContract。

以下是我的合同和服务合同代码。

[DataContract]
public class DataResponse
    {
        string customerId;
        string version;
        string email;
        string firstName;
    [DataMember]
 public string CustomerId
        {
            get { return customerId; }
            set { customerId = value; }
        }
    [DataMember]
        public string Version
        {
            get { return version; }
            set { version = value; }
        }
[DataMember]
        public string Email
        {
            get { return email; }
            set { email = value; }
        }
    [DataMember]
        public string FirstName
        {
            get { return firstName; }
            set { firstName = value; }
        }
}
[ServiceContract]
    public interface ICustomerProfile
    {
        [OperationContract]
        DataResponse GetCustomerProfile(string requestObj);
    }

请做必要的。

WCF数据合约在java或非.net客户端工作吗?

是,它会工作的。

下面是示例- http://adventuresinsoftware.com/blog/?p=481

您可以按照示例中给出的步骤并尝试您的

YES

WCF将所有内容序列化为XML消息,该消息由XML模式(XSD)文件定义。

因此,只要另一端的客户端能够理解和解释XSD和WSDL文件(对于基于soap的WCF服务),那么YES -该客户端将能够读取您的数据。

这就是WCF的的全部意义——它是最具互操作性的web服务标准,任何像样的客户端都可以与它对话…

取决于你定义的绑定,而不是契约。最坏的情况是,您必须为SOAP、JSON或任何其他兼容技术定义另一个绑定。Ie。