我有一个任务来创建一个完全适合正在运行的应用程序的模块。所以我必须坚持原来的结构。 我通过以下输入使代码工作:
<getStaffInfoDelta xmlns="test1">
<TB>1</TB>
<rqUID>1</rqUID>
<Date>2010-02-02</Date>
<ChangeDate>1</ChangeDate>
</getStaffInfoDelta>
那是它的样子:
[MessageContract(IsWrapped = true, WrapperName = "getStaffInfoDelta", WrapperNamespace = "test1")]
public class getStaffInfoDeltaParam{
[MessageBodyMember(Namespace = "test1")]
public string TB { get; set; }
[MessageBodyMember(Namespace = "test1")]
public string rqUID { get; set; }
[MessageBodyMember(Namespace = "test1")]
public DateTime Date { get; set; }
[MessageBodyMember(Namespace = "test1")]
public string ChangeDate { get; set; }
}
这很好,但是我不明白如何修改我的类以从这样的输入中获取参数:
<getStaffInfoDelta xmlns="test1">
<param xmlns="test">
<TB>1</TB>
<rqUID>1</rqUID>
<Date>2010-02-02</Date>
<ChangeDate>1</ChangeDate>
</param>
</getStaffInfoDelta>
我尝试过这种方式:
[MessageContract(IsWrapped = true, WrapperName = "getStaffInfoDelta", WrapperNamespace = "test1")]
public class getStaffInfoDeltaParam
{
[MessageBodyMember(Namespace = "test1")]
public param innerParam { get; set; }
}
[MessageContract(IsWrapped = true, WrapperName = "param", WrapperNamespace = "test")]
public class param
{
[MessageBodyMember(Namespace = "test")]
public string TB { get; set; }
[MessageBodyMember(Namespace = "test")]
public string rqUID { get; set; }
[MessageBodyMember(Namespace = "test")]
public DateTime Date { get; set; }
[MessageBodyMember(Namespace = "test")]
public string ChangeDate { get; set; }
}
但是出了点问题,我将getStaffInfoDeltaParam设置为空