将空命名空间设置为DataContract

时间:2015-09-28 16:37:14

标签: c# .net wcf wsdl datacontract

我使用带有空命名空间的DataContract

[DataContract(Namespace = "")]    
    public class crearCuentaPorCobrarRq
    {
        [DataMember(IsRequired = true, Order = 0)]
        public InfoRequest infoRequest { get; set; }
        [DataMember(IsRequired = true, Order = 1)]
        public CuentaCobrar[] cuentasCobrar { get; set; }
    }

但不幸的是我得到了这样一个wsdl:

<b:crearCuentaPorCobrarRq>
    <infoRequest></infoRequest>
    <cuentasCobrar></cuentasCobrar>
</b:crearCuentaPorCobrarRq>

请忘记b:的来源,问题是[DataContract(Namespace =&#34;&#34;)]只在DataMember中删除命名空间,我也想在DataContract中退出,比如这样:

<crearCuentaPorCobrarRq>
    <infoRequest></infoRequest>
    <cuentasCobrar></cuentasCobrar>
</crearCuentaPorCobrarRq>

crearCuentaPorCobrar是一个OperationContract方法,它在ServiceContract中声明:具有名称空间&#34; com.lsc&#34; ;.想法是crearCuentaPorCobrar维护前缀com但其操作契约中的参数crearCuentaPorCobrarRq更改:

[ServiceContract(Namespace = "com.lsc.services.financialSystem")]
public interface IServicioCuentas
{
    [OperationContract]
    InfoResponse crearCuentaPorCobrar(crearCuentaPorCobrarRq crearCuentaPorCobrarRq);
}

0 个答案:

没有答案