在.NET项目开发中,日志管理是一个重要环节。NLog是一个流行的日志库,通过NuGet可以轻松集成到.NET项目中。然而,将项目存储到版本控制系统时,如何管理NLog DLL文件成为一个问题。本文将分享一种管理NLog DLL文件的方法。
创建了一个示例Windows控制台应用程序,并使用NuGet集成了NLog。项目文件结构如下所示:
设置了trunk、branches和tags文件夹,并将项目上传到版本控制系统。目前,使用SVN服务器和TortoiseSVN客户端来管理项目。如果浏览所有项目文件夹,会看到NLog DLL文件保存在NLog.4.2.3文件夹下:
根据当前的版本策略,不允许上传任何DLL到代码仓库,包括NLogDLL。因此,设置了TortoiseSVN客户端忽略列表如下:
在提交代码更改后,需要从SVN服务器检出新开发。然后这个项目不包含NLog DLL。如果编译它,它会失败。如何将这些NLog DLL文件重新添加到这个项目中?
在检出项目的最新版本后,浏览到packages文件夹。现在完全删除NLog.4.2.3文件夹。然后,打开Visual Studio并加载这个项目。从工具菜单开始NuGet管理器如下:
在搜索框中输入"NLog"并按回车。将看到以下屏幕。在右上角,将看到一个"Restore"按钮。请按这个Restore按钮,所有缺失的NLog DLL文件将从在线下载并显示在这个项目中。
NuGet恢复所有缺失的NLog DLL文件后,然后重新构建这个项目。一切正常工作。
一个更简单、更干净的配置是甚至不将packages文件夹上传到版本控制系统。自动地,所有与NLog相关的DLL文件都不会上传到版本控制系统。packages文件夹如下所示:
以下是重新加载所有相关NLog程序集到这个项目的步骤:
在检出项目的最新版本后,然后打开Visual Studio(版本是Visual Studio 2015)。加载这个项目。
从工具菜单中选择Build=>Clean Build。将看到构建成功。没有错误。
按F5运行应用程序,将看到底部的输出窗口,NuGet自动下载所有缺失的NLog程序集。几秒钟后,应用程序开始运行。这更干净。
这背后的原因是在项目目录下有一个packages.config文件。NuGet可以使用这个配置文件下载所有缺失的Nlog包文件。
]]>
这是管理NLogDLL文件的方法。如果有更好的方法,请与CodeProject社区分享。希望喜欢这篇文章。感谢阅读!
如何在VisualStudio 2015中使用NLog(4.2)