次のコードで実行されているメソッドがあります。
private void WriteToDb()
{
using (SqlConnection dbConnection = new SqlConnection(_conStr))
{
dbConnection.Open();
using (SqlBulkCopy sbc = new SqlBulkCopy(_conStr))
{
sbc.DestinationTableName = "tblLog";
try
{
sbc.WriteToServer(_tblLog);
}
catch (Exception e)
{
Console.WriteLine(String.Format("{0} Error writing log info: {1} \n {3}", DateTime.Now.ToString(), e.Message, e.StackTrace));
}
}
}
_tblLog.Rows.Clear();
}
String.Format()
次のスタックトレースを持つメソッドから例外を受け取りました。
未処理の例外:System.FormatException:インデックス(ゼロベース)は、ゼロ以上で、引数リストのサイズ未満である必要があります。System.Text.StringBuilder.AppendFormat(IFormatProviderプロバイダー、文字列形式、Object [] args)でSystem.String.Format(IFormatProviderプロバイダー、文字列形式、Object [] args)でSystem.String.Format(文字列形式、オブジェクトarg0 、Object arg1、Object arg2)at MyCompany.MyClient.MySoftware.Logger.WriteToDb()
このエラーの原因を実際に確認できます。私が見る限り、私はそのメソッドでコレクションを使用していません。また、このメソッドはマルチスレッドであることを理解する必要がありますが、やはり、考えられる影響については考えられませんでした。
ありがとうございました!