2012-04-26 1 views
2

私は最近CRM 4.0に対してプログラミングを開始し、CrmServiceを使用してこれらの要求を発行しています。多くの場合、要求を送信するときに使用している動的エンティティの一部のプロパティに間違った値が渡されます。もちろんリクエストは失敗し、例外をインターセプトしてログに記録します。問題は、これが私が得ることです:ジェネリックSoapExceptionを受信したときに実際の問題に絞り込む方法:サーバーが要求を処理できませんでした。 MS-CRM 4.0から

System.Web.Services.Protocols.SoapException: Server was unable to process request. 
    at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) 
    at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) 
    at Microsoft.Crm.SdkTypeProxy.CrmService.Execute(Request Request) 
    at MyEntity.Employee.ExecuteCreateRequest(CrmService service, DynamicEntity entity) in c:\Workspaces\One\...\Employee.vb:line 351\nSystem.Xml.XmlElement 

これはあまり行かないです。

これまで、私はいくつかのプロパティを念入りに取り除いてテストし直してから、プロパティの値が間違っていると推測しました。 実際の原因をより正確に突き止めることができるので、何が原因でエラーが発生したのか、さらに詳しい情報を得る別の方法はありますか?

答えて

2

ブロックSoapExceptionをキャッチするためにブロックcatchが必要になり、必要に応じて詳細またはメッセージのプロパティを表示することができます。 Detailsプロパティは、おそらくあなたが...

... 
catch(SoapExcetion soapEx){ 
    console.writeLine("SoapException: " + soapEx.Detail); 
// console.writeLine("SoapException: " + soapEx.Message); 
} 
catch(Exception ex){ 
    console.writeLine("Exception: " + ex.Detail); 
} 

を探しているのヒントが含まれていますまた、CRMサーバ上のトレースと、あまりにもログファイルを見て有効にすることを検討することがあります。

関連する問題