C# 如何通过.asmxweb服务获取此请求结构?

C# 如何通过.asmxweb服务获取此请求结构?,c#,web-services,wsdl,asmx,C#,Web Services,Wsdl,Asmx,我正在努力创建一个.asmxwebservice来满足集成环境的特定需求,而对于我自己来说,我不知道如何让其中的一部分正常工作。关键是请求WSDL需要如下所示。(注意我删除了soap信封和名称空间信息) 问题是如何定义“myComplexGroup”以允许创建多个mySubStructure元素,同时仍将所有项输出到WSDL 如果我继续这样做 public class MyComplexGroupInfo { public List<MySubStructureInfo>

我正在努力创建一个.asmxwebservice来满足集成环境的特定需求,而对于我自己来说,我不知道如何让其中的一部分正常工作。关键是请求WSDL需要如下所示。(注意我删除了soap信封和名称空间信息)

问题是如何定义“myComplexGroup”以允许创建多个mySubStructure元素,同时仍将所有项输出到WSDL

如果我继续这样做

public class MyComplexGroupInfo 
{
    public List<MySubStructureInfo> mySubStructure {get; set;}
}

public class MySubStructureInfo
{
    public string subItem1 {get; set;}
    public string subItem2 {get; set;}
}
公共类MyComplexGroupInfo
{
公共列表mySubStructure{get;set;}
}
公共类MySubStructureInfo
{
公共字符串子项1{get;set;}
公共字符串子项2{get;set;}
}
然后,我可以将
public MyComplexGroupInfo myComplexGroup{get;set;}
添加到对象中,我将获得其中的一部分,但它不是列出subItem1和subItem2,而是简单地说MySubStructureInfo,将nil设置为1


我怎样才能避开这个问题呢?

也许是一个显而易见的问题,但是您是否尝试过使用wsdl.exe来查看它会吐出什么?您可以始终使用它作为指导(即,您不必直接使用该类)。

如果您有需要实现的WSDL契约,您可以尝试
WSDL.exe/serverInterface
来生成服务存根。

啊,我以前从未使用过它。我必须传递给它什么?
[Web Method]
public void MyWebMethod(MyWebMethodRequest methodOne)
{
    //Do my stuff
}

public class MyWebMethodRequest
{
    public string myValue {get; set;}
    public MyDemoGroupInfo myDemoGroup {get; set;}
}

public class MyDemoGroupInfo
{
    public string myDemoGroupItem {get; set;}
    public string myDemoGroupItem2 {get; set;}
}
public class MyComplexGroupInfo 
{
    public List<MySubStructureInfo> mySubStructure {get; set;}
}

public class MySubStructureInfo
{
    public string subItem1 {get; set;}
    public string subItem2 {get; set;}
}