Привет всем!
Столкнулся с такой проблемой:
Есть веб-метод, к примеру:
[WebMethod]
public void GetString(string myString)
{
}
И когда он вызывается не Net'овским клиентом, а с помощью msxml, то при передаче строки символы "+" меняются на пробелы.
Вот примерный код клиентского вызова:
msxml::IXMLDOMDocument2Ptr m_pXmlDoc;
msxml::IXMLHTTPRequestPtr m_pXmlReq;
m_pXmlDoc.CreateInstance ("MSXML2.DOMDocument");
m_pXmlReq.CreateInstance ("MSXML2.XMLHTTP");
bstr_t m_strWebServiceURL="http://localhost/Service1.asmx";
bstr_t strMethod="UploadGDB";
bstr_t strParam="myString=1++++1";
bstr_t strResponse="";
bstr_t strURL = m_strWebServiceURL + "/" + strMethod;
HRESULT hr=m_pXmlReq->open("post", strURL, FALSE);
hr=m_pXmlReq->setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
hr=m_pXmlReq->send((_variant_t)strParam);
Как это можно побороть?
30.06.03 00:18: Перенесено модератором из '.NET' в XML/SOAP. — ХД