为什么我得到“SOAP响应版本不匹配”

时间:2011-09-27 22:36:14

标签: c# web-services soap flex4

以下是通过c#webservice导入csv数据文件的flex代码。

private function Import():void{
    CursorManager.setBusyCursor();

    var op:Operation = Operation(_webservice.getOperation('ImportData'));
    op.addEventListener(FaultEvent.FAULT,operationFault);
    op.addEventListener(ResultEvent.RESULT,operationResult);

    var ba:ByteArray = new ByteArray();

    ba.writeUTFBytes(objectToXML(datasource.source).toXMLString());

    op.arguments = new Array(filename, ba);
    op.send();
}

protected function operationFault(e:FaultEvent):void
{
    CursorManager.removeBusyCursor();
    Alert.show(e.fault + " (" + e.statusCode + ")");
}


protected function operationResult(e:ResultEvent):void
{
    datasource.removeAll();
    CursorManager.removeBusyCursor();
    Alert.show("Success");
}

以下是c#webservice:

[WebMethod]
public XmlDocument ImportData(String filename, byte[] data)
{
    Boolean bReturn = false;

    /* .... code to import data .... */

    XmlDocument xmlDoc = new XmlDocument();

    xmlDoc.LoadXml("<response>" + (bReturn ? "true" : "false") + "</response>");

    conn.Close();

    return xmlDoc;
}

应用程序在我的开发环境中运行正常,而当我在生产服务器上运行时,我收到以下错误消息:

  

[RPC Fault faultString =“SOAP Response Version Mismatch”   faultCode =“DecodingError”faultDetail =“null”](404)

开发环境是: Win7,MSSQL Server 2005,MS Visual Studio 2010,.NET Framework版本4.0.30319

直播服务器: Win2008服务器,MSSQL Server 2005,IIS7,.NET Framework版本4.0.30319

有人能想到为何我在实时服务器上收到上述错误消息的原因吗?

感谢。

1 个答案:

答案 0 :(得分:0)

我想出了问题。我试图导入的数据文件是7MB文本文件。我将它拆分为2个文件并尝试导入然后它工作。所以问题是传输到服务器的数据大小。