繁体   English   中英

带有svcutil的WCF服务客户端(没有“额外”的clientside-datatype def。)

[英]WCF Service Client with svcutil ( no “extra” clientside-datatype def. )

我遇到了问题,WCF服务(使用svcutil.exe生成)生成自己的数据类型,而不是使用我已定义的数据类型。

例如:

svcutil生成了这样的东西:

 public partial class EmailTransactionRequestMsg : object,   System.Runtime.Serialization.IExtensibleDataObject
{

    private System.Runtime.Serialization.ExtensionDataObject extensionDataField;

    private int bit_to_setField;

    private string country_db_identifierField;
.

.
}

当我真的希望它使用该类已经存在:

[DataContract(Namespace = "Ps.App.Mailing.MsgQueue.MsgInterfaces")]
public class EmailTransactionRequestMsg
{
    [DataMember]
    public string country_db_identifier;

    [DataMember]
    public int bit_to_set;

}

我看到svcutil服务创建了一个新的extensionData-field(我不知道这是否需要)

那么,我如何让svcutil使用我自己的类(因为我不想按每个字段强制转换对象)

谢谢你们!

请查看以下svcutil参考:

http://msdn.microsoft.com/en-us/library/aa347733.aspx

特别是/ reference:switch应该正是你想要的。

我看到svcutil服务创建了一个新的extensionData-field(我不知道这是否需要)

生成此信息是为了帮助您进行数据协定版本控制。 如果稍后向EmailTransactionRequestMsg添加新属性,但是如果客户端使用的旧程序集未定义该属性,则它仍然可以使用新服务,而ExtensionDataObject将包含未知(新)属性(ies)。 MSDN应该再提供更多详细信息: http//msdn.microsoft.com/en-us/library/system.runtime.serialization.extensiondataobject.aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM