get { return m_salary; }
set { m_salary = value; }
}
<?xml version="1.0"?>
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Id>12345</Id>
<Name>Dflying</Name>
<Email>Dflying@some.com</Email>
</Employee>
若是某個Web Service方法的返回值為字符串類型,且該Web Service方法將使用XML方式序列化返回值,那么該字符串將被默認為是一個XML文檔的片段,并以XML方式進行序列化。例如如下Web Service方法:
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Xml)]
public string GetString()
{
string theString = "<persons>"
+ "<person><name>Tom</name><age>30</age></person>"
+ "<person><name>Jerry</name><age>20</age></person>"
+ "</persons>";
return theString;
}
圖3-38 普通字符串的內容被默認當成了XML片段處理
當然,ASP.NET AJAX做這樣的假設有它的道理,那就是字符串可能實際上表示的就是一段XML數據。但是如果我們需要的就是一個普通的字符串,那么這樣做豈不是幫了倒忙嗎?
幸運的是,通過在 [ScriptMethod]屬性中將XmlSerializeString指定為true,我們即可得到普通的字符串,即避免了ASP.NET AJAX為我們做任何的自動轉換。讓我們按照如下代碼修改前面的GetString()方法,注意其中粗體部分:
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Xml,
XmlSerializeString = true)]
public string GetString()
{
文章來源于領測軟件測試網 http://www.kjueaiud.com/