2016-04-06 7 views
0

を作成した後、私は次のクラスを持っている現在のコンテキスト内に存在しませんここの最初の行は、クラスのインスタンスを作成しています。 しかし、この変数を時計で調べると、カーソルがラインconfiguration(aspNetLoggerConfiguration);にあるとき、変数が現在のコンテキストに存在しないことがわかります。変数は、直接それを

変数のインスタンスを作成することは、ウォッチウィンドウで直接行うときに機能します。

誰か手掛かりがありますか?

P.S. xUnitでテストしているDNXプロジェクトです。コードは「デバッグ」モードで実行されています。

+0

実行時にエラーが発生しますか? –

+0

デバッグ中またはアプリケーション実行中はい。しかし、それは正しく構築されます。 – Complexity

+0

メソッドを公開するようにしましたか? – jdweng

答えて

0

ランタイムはなく、コンパイルエラーもありません。 Visual Studioはデバッグウィンドウにオブジェクトを表示することができないため、ランタイムオブジェクト(そのようなもの)です。

この問題のもう1つの原因は、wcf-serviceクライアントです。新しいサービスClientを作成し、ウォッチウィンドウにclient.InnerChannelと表示してみます。それは動作しません。ただし、一時オブジェクト(bool、stringなど)を作成し、希望の値を書き込んで値を確認することができます。

#if DEBUG 
    var tmpLog = aspNetLoggerConfiguration.LogSource; 
#endif 

マウスが上に来ると、LogSourceがtmpLogに表示されます。

+0

定義の後に上記の行を追加しましたが、「現在のコンテキストにtmpLogが存在しません」 – Complexity

+0

テストのためにxUnitユニットテストの最初の行に次の行を追加しました: 'AspNetCoreLoggingConfigurationBuilder'に空のコンストラクタを置くと、コードが実行されます。 Steppin gをコンストラクタで返しますが、返されるときには値はnullです。 – Complexity

+0

あなたが私に言っていることから、別の可能性のある問題が何であるかを推測することはできますが、正直言ってあなたのプログラムがなぜこのように振る舞っているのか分かりません。 –

関連する問題