1

アセンブリ CrittercismWP8SDK.dll、v2.0.0.0 の使用

以下の古いコードでは、Crittercism が NullReferenceException をスローします。

[System.NullReferenceException] = {System.NullReferenceException: オブジェクト参照がオブジェクトのインスタンスに設定されていません。CrittercismSDK.DataContracts.ExceptionObject..ctor(String exceptionName, String exceptionReason, String stacktrace) で CrittercismSDK.Crittercism.LogHandledExce...

StackTrace = " at CrittercismSDK.DataContracts.ExceptionObject..ctor(String exceptionName, String exceptionReason, String stacktrace)\r\n
at CrittercismSDK.Crittercism.LogHandledException(Exception e)\r\n

古いコード

Exception exception = new Exception(description);  
exception.Data.Add(MethodName, methodName); 
Crittercism.LogHandledException(exception);  //NullReferenceException

新しいコードも例外ではありません:

try
{
    Exception ex = new Exception(description);
    ex.Data.Add(MethodName, methodName);
    throw ex;
}
catch (Exception e)
{
    Crittercism.LogHandledException(e);  //No NullReferenceException 
}

私の理論では、システムは、私ができない、または私が見逃した方法で Exception オブジェクトを設定するというものです。古いコードによって Crittercism が NullReferenceException をスローする理由はありますか?

4

2 に答える 2

1

この方法で例外を作成する

Exception exception = new Exception(description);  
exception.Data.Add(MethodName, methodName); 
Crittercism.LogHandledException(exception); 

Crittercism に直接渡すとStackTrace、例外の -Property が に設定されnullます。この場合、これがCrittercismの問題だと思います。

StackTraceこの場合、Crittercism が NullReferenceException をスローしないように、catch ブロックで-property を初期化します。

于 2014-06-26T14:14:37.587 に答える
1

例外をスローしない場合は、新しいものにするだけで、スタックトレースは null になります

于 2014-06-26T14:12:53.160 に答える