Вы можете добавить каждую запись в список после того, как они будут созданы для последующего использования в Datatable для решения ниже.
Это решение будет заключаться в том, чтобы регистрировать и экспортировать в CSV-файл , который может содержать любой тип ведения журнала в виде DataTable , это позволит вам настроить собственный ведение журнала , чтобы вы могли видеть текущее состояние проекта, вот пример:
Метод ToCSV:
//---------------------------------------------------------String Tool 2-----------------------------------------------------
public static class StringTool2
{
/// <summary>
/// Get a substring of the first N characters.
/// </summary>
// First possible truncate method
public static string Truncate(string source, int length)
{
if (source.Length > length)
{
source = source.Substring(0, length);
}
return source;
}
/// <summary>
/// Get a substring of the first N characters. [Slow]
/// </summary>
// Second possible truncate method
public static string Truncate2(string source, int length)
{
return source.Substring(0, Math.Min(length, source.Length));
}
// Method to export (Datatable) to csv
public static void ToCSV2(this DataTable dtDataTable, string strFilePath)
{
StreamWriter sw = new StreamWriter(strFilePath, false);
//Datatable generation
for (int i = 0; i < dtDataTable.Columns.Count; i++)
{
//Create comma separated values, retrieving from datatable
sw.Write(dtDataTable.Columns[i]);
if (i < dtDataTable.Columns.Count - 1)
{
sw.Write(",");
}
}
sw.Write(sw.NewLine);
// Foreach row in the DataTable
foreach (DataRow account in dtDataTable.Rows)
{
for (int i = 0; i < dtDataTable.Columns.Count; i++)
{
if (!Convert.IsDBNull(account[i]))
{
string value = account[i].ToString();
if (value.Contains(','))
{
value = String.Format("\"{0}\"", value);
sw.Write(value);
}
else
{
sw.Write(account[i].ToString());
}
}
if (i < dtDataTable.Columns.Count - 1)
{
sw.Write(",");
}
}
sw.Write(sw.NewLine);
}
sw.Close();
}
}
//----------------------------------------------------------------------------------------------------------------------------------
вызов и использование метода:
// Calling the .ToCSV2 method and entering parentheses - Choosing file path and dataTable.
StringTool2.ToCSV2(dt, "C:\\Users\\user\\Documents\\Processed\\CloneSuppliersFailed" + DateTime.Now.Hour + DateTime.Now.Minute + DateTime.Now.DayOfYear + DateTime.Now.Month + DateTime.Now.Year + ".csv");
Вам может понадобиться импортировать несколько вещей, которые вам понадобятся:
using System.IO;
using Quartz;
Это создаст файл .CSV в указанном вами месте, чтобы вы могли наблюдать за ним, хотя это не реальное время, скажем, вы можете взломать код, прежде чем Transactions.commit (), чтобы проверить содержимое созданного файла.