【发布时间】:2014-01-23 23:39:06
【问题描述】:
我正在开发一个 Windows 应用程序。我在主窗体中显示日志信息。我想添加另一个类的日志信息。下面是按钮点击事件的代码:
private void button1_Click(object sender, EventArgs e)
{
IDAL dal = new LoadCaseDAL();
Result result = new Result();
dal.Load(result);
AddToLogger("test end");
}
AddtoLogger(){ }
AddtoLogger() 和按钮点击事件在主窗体中。
在 dal.Load(result) 方法中,我正在调用此函数。我想使用 AddToLogger() 方法将此函数中的日志信息添加到主窗体中。
protected internal void LoadLCFiles(BoltDataset.LoadCaseDataTable dt)
{
List<string> files = Helper.GetFiles("Text Files|*.txt");
**//AddToLogger("Total files: " + files.Count().ToString());**
Task loadFilesTask = Task.Factory.StartNew(() =>
{
foreach (string filePath in files)
{
LoadLCTextFile(filePath, dt);
}
}).ContinueWith(t =>
{
if (t.IsFaulted)
{
**//AddToLogger("Loading Failed");**
}
else if (t.IsCompleted)
{
**//AddToLogger("Loading Succesfull");**
}
});
}
我怎样才能做到这一点?请建议。
【问题讨论】:
-
把这个传入 dal.Load(this, result);并使 AddtoLogger 公开.. 现在您可以从您的 dal 类中调用 AddtoLogger ...但是,对于日志记录,我会使用类似 log4net 的东西
-
dal 不是一种形式。它是一个数据访问层的类
标签: c# winforms task-parallel-library