如何在 C# 编程中使用 access 数据库修复和创建日志

Posted

技术标签:

【中文标题】如何在 C# 编程中使用 access 数据库修复和创建日志【英文标题】:how to fix and create logs in C# programming with access database 【发布时间】:2019-02-11 11:42:14 【问题描述】:

我的问题是我无法编写日志(记录您在程序中执行的每项操作的日志)。所以我问你如何创建日志,另一件事我在这里有这段代码。我认为它是用于创建日志,但我不知道如何编辑必须在下面的代码中编辑的内容。有人可以帮我吗?

public class LogWriter
    
        private string m_exePath = string.Empty;
        public LogWriter(string logMessage)
        
            LogWrite(logMessage);
        
        public void LogWrite(string logMessage)
        
            m_exePath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
            try
            
                using (StreamWriter w = File.AppendText(m_exePath + "\\" + "LOGG.txt"))
                
                    Log(logMessage, w);
                
            
            catch (Exception ex)
            
                MessageBox.Show("new"+ex);
            
        

        public void Log(string logMessage, TextWriter txtWriter)
        
            try
            
                txtWriter.Write("\r\nLog Entry : ");
                txtWriter.WriteLine("0 1", DateTime.Now.ToLongTimeString(),
                    DateTime.Now.ToLongDateString());
                txtWriter.WriteLine("  :");
                txtWriter.WriteLine("  :0", logMessage);
                txtWriter.WriteLine("-------------------------------");
            
            catch (Exception ex)
            
                MessageBox.Show("old"+ex);
            
        
    

【问题讨论】:

我们不知道您希望该代码做什么,因此我们也不知道如何编辑它。看起来它将日志条目写入文件(很差)。你是说你不知道如何使用这个类? 是的,我真的很困惑如何使用它,我是编程新手,所以请多多包涵 【参考方案1】:

如果您可以使用您所展示的此类以外的其他东西,我建议您研究一个日志框架。看看 Serilog 甚至 Nlog。它们专为线程安全和效率而设计。

要使用此类或任何类(非静态的),您可以使用new 创建一个实例:

LogWriter logger = new LogWriter("a message here..");

不幸的是,这个类被设计成你不能在不写日志条目的情况下实例化它,所以你会得到“这里的消息......”此时写入的日志。

现在您有了一个实例,您可以在其上调用方法,例如:

logger.LogWrite("This is a log message...");

您应该能够在与您的程序位于同一文件夹的 LOGG.txt 文件中看到您的日志条目。

不要只考虑这个记录器。如果你有更多的编程经验,你就会知道如何做到这一点。花一点时间在教程上会有很长的路要走。

【讨论】:

以上是关于如何在 C# 编程中使用 access 数据库修复和创建日志的主要内容,如果未能解决你的问题,请参考以下文章

如何在 C# 中使用 Access 2007 链接表管理器

如何使用 C# 和 OleDB 向 Access 数据库表中添加富文本列?

如何在 C# 的线程中以编程方式复制 Excel 文件时修复访问拒绝错误

如何以编程方式在 Access 中附加 DBF 文件?

如何通过 C# 以编程方式刷新 MS Access 链接表(使用 Excel 文件)?

在 C# 中以编程方式从 Excel 文件中大量导入数据到 Access