Web Services 如何将复杂对象作为参数提供给Web服务函数

woobm2wo  于 2022-11-24  发布在  其他
关注(0)|答案(1)|浏览(128)

我是使用.Net的Web服务新手,遇到以下问题。我有一个具有以下定义的WSDL

<s:element name="ClassTransfer">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="trans" type="tns:ClassStudent" />
            <s:element minOccurs="0" maxOccurs="1" name="RollNo" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ClassStudent">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Subject" type="s:string" />
…
        </s:sequence>
      </s:complexType>

并在代码中调用该函数时

SchoolWebService.RemoteClassApi objSchool = new SchoolWebService.RemoteClassApi();
res= objSchool.ClassTransfer(…)

它要求我提供两个参数:一月一日和一月一日
RollNo可以简单地作为字符串提供,但我不知道如何提供trans对象?

63lcw9qa

63lcw9qa1#

通常,类“ClassStudent”应该已经生成,因此请尝试

var studentToTransfer = new ClassStudent {Subject = "Foo"};
SchoolWebService.RemoteClassApi objSchool = new SchoolWebService.RemoteClassApi();
res= objSchool.ClassTransfer(studentToTransfer , "5A" );

注意:类是在项目的“services references”文件夹中生成的,没有遵循“一个文件一个类”的原则;)

相关问题