C〓WebServiceパラメータ属性
1763 ワード
前回のWebServiceの名前空間衝突の例によれば、MyMethodインターフェースのXML要求記述とXML応答記述は以下の通りである。
MyMethodインターフェースはこのように修正されました。
POST /Service1.asmx HTTP/1.1
Host: localhost
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://tempuri.org/MyMethod"
string
int
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
string
string
このインターフェースでは、XMLのデフォルトのラベルはMyMethodとMyMethodResonseであり、現在はデフォルトの値を変更し、ラベル名をカスタマイズする必要があります。ここでは、return注釈を追加することにより実現できます。MyMethodインターフェースはこのように修正されました。
[WebMethod]
[return: XmlElement(ElementName = "output")]
public MyClass2.MyClass2 MyMethod([XmlElement(ElementName="input")]MyClass1.MyClass1 myClass1)
{
return new MyClass2.MyClass2(); ;
}
ラベル名に応じてinputとoutputに変更します。