0

私はコードを持っています

 private Log in_log;
 in_log = new Log(logfolder + call_date.ToString("yyyyMMdd") + "\\" + call_number + ".log");

それで

    private void AppLog(string s1,string s2)
    {
        if (Environment.UserInteractive) Log.Write(s1, s2);
        try
        {
            in_log.Write(s1, s2);
        }
        catch (Exception ex)
        {
            Log.WriteException(ex,":Logging:AppLog" );
        }
    }

例外が発生しました

オブジェクト参照がオブジェクト インスタンスに設定されていません

in_log.Write(s1, s2); で

ログの書き込みメソッドは次のとおりです。

    public void Write(string LogEntry);
    public void Write(int logLevel, string LogEntry);
    public void Write(string s, params object[] args);
    public void Write(int logLevel, string s, params object[] args);

使い方が間違っていると思います

params object[] 引数

呼び出しプロセス:

call_number = "H_20131106081139199_69";
AppLog("Answering Call Number:{0}", call_number);

訂正ありがとう。

4

2 に答える 2

1

その行でそのエラーが発生する唯一の理由は、in_logが null であるためです。in_log = new Log(...このコード行に到達する前に、実際にその行を呼び出していることを確認してください。

そうは言っても、例外がその行によって、または Write メソッド自体の中でスローされていることは確かですか? 後者の場合、さらなるヘルプのためにメソッドのコードを投稿する必要があります。

于 2013-11-06T13:43:58.943 に答える
-1

文字列を書き込むために in_log を使用する場合は、スコープ内にあることを確認してください。

于 2013-11-06T13:44:25.013 に答える