着信パラメーターを無視しているように見える ASP.Net 2 asmx Web サービスの問題をトラブルシューティングする方法を理解するのに助けが必要です。
文字列を受け取り、SAP API を少し操作して、操作の結果を文字列として返す ASMX サービスがあります。開発環境では正常に動作しますが、着信パラメーターを受信していないように見えるため、本番環境では失敗します。
代表的なコード スニペットを次に示します。
消費コードでは、「TextIdentifier」は、Web サービスを呼び出すメソッドに渡される文字列です。
SAPProxyWebService.SAPProxyWebService webservice = new SAPProxyWebService.SAPProxyWebService();
return webservice.GetEncodedText( TextIdentifier );
Web メソッドは次のように宣言されます。
[WebMethod()]
public string GetEncodedText(string TextIDString)
{
do some stuff with TextIDString;
return results;
}
Web メソッドを呼び出しているメソッド内で TextIdentifier の値をログに記録すると、期待値が得られます。実際、Web メソッド呼び出しと同じ行にログを記録すると、予想される入力が表示されます。
ただし、他の操作の前に webmethod 内で TextIDString パラメータをログに記録すると、null になります。Web メソッド内で特定の値をハードコードすると、ハードコードされた値に期待する結果が得られます。
Web メソッドが着信パラメーターを「失う」原因となるものを探す必要がありますか?