在使用NuGet包管理器安装NLog和NLog.config后,我无法编辑NLog.config,它显示了锁定图标。如何解锁?
在使用NuGet包管理器安装NLog和NLog.config后,我无法编辑NLog.config,它显示了锁定图标。如何解锁?
对于新项目,不建议使用NLog.Config包。
来自:https://www.nuget.org/packages/NLog.config
注意:当使用
<PackageReference>
时,该软件包可能无法正常工作。建议:
- 手动下载:https://raw.githubusercontent.com/NLog/NLog/dev/src/NuGet/NLog.Config/content/NLog.config
- 将“复制到输出目录”设置为“仅在更新时复制”
我曾经遇到同样的问题 - Nlog 配置的 NuGet 包安装位置与根项目目录不同,例如 C:\Users\User\.nuget\packages\nlog.config\4.7.7\contentFiles\any\any\NLog.config
而不是 I:\workspaceVS\net50\ConsoleCoreApp1
。
我通过将 Nlog.config 文件手动复制到项目的根目录,并按照以下方式在我的 .csproj 文件中引用它来解决了问题:
<Project Sdk="Microsoft.NET.Sdk">
...
<ItemGroup>
<None Update="NLog.config">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="NLog.xsd">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
...
<ItemGroup>
</Project>
替代:
<Project Sdk="Microsoft.NET.Sdk">
...
<ItemGroup>
<None Update="C:\Users\User\.nuget\packages\nlog.config\4.7.7\contentFiles\any\any\NLog.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="C:\Users\User\.nuget\packages\nlog.schema\4.7.7\contentFiles\any\any\NLog.xsd">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
...
<ItemGroup>
</Project>
现在,当我发布它时,它直接显示在输出目录中:
.(I:\workspaceVS\net50\ConsoleCoreApp1\bin\Release\net5.0\win-x86)
├── ...
└── Nlog.config # Holds the configuration for Nlog
您可以在{项目文件夹}\bin\Debug\net5.0\
中找到NLog.config
文件。您可以使用记事本或Visual Studio打开并编辑它。