如何在 .NET Core 1.1 中的程序集上使用自定义属性
How to use a custom attribute on an assembly in .NET Core 1.1
虽然我发现 关于检索程序集的自定义属性,但我不确定如何将自定义属性添加到 .NET Core 1.1 中的程序集。在 .NET Framework 中,我会做类似的事情:
[assembly: AdditionalLocation(@"..\ReadFromHere")]
但是我在 Visual Studio 中的 netcore1.1 项目没有 AssemblyInfo.cs。我应该在哪里声明程序集的自定义属性?我可以在 .csproj 文件中添加什么吗?
您始终可以创建一个新的 AssemblyInfo.cs
文件或任何其他 .cs
文件来执行相同的操作。
不过,您也可以使用新的自动生成程序集信息机制。您可以将其添加到您的 csproj
文件中,将替换 Include
属性值的值替换为自定义属性的类型名称:
<ItemGroup>
<AssemblyAttribute Include="System.Runtime.CompilerServices.InternalsVisibleTo">
<_Parameter1>DasMulli.Win32.ServiceUtils.Tests</_Parameter1>
</AssemblyAttribute>
</ItemGroup>
对于 .NET 5.0,您可以使用 AssemblyMetadata:
<AssemblyMetadata Include="Bar" Value="Baz" />
虽然我发现
[assembly: AdditionalLocation(@"..\ReadFromHere")]
但是我在 Visual Studio 中的 netcore1.1 项目没有 AssemblyInfo.cs。我应该在哪里声明程序集的自定义属性?我可以在 .csproj 文件中添加什么吗?
您始终可以创建一个新的 AssemblyInfo.cs
文件或任何其他 .cs
文件来执行相同的操作。
不过,您也可以使用新的自动生成程序集信息机制。您可以将其添加到您的 csproj
文件中,将替换 Include
属性值的值替换为自定义属性的类型名称:
<ItemGroup>
<AssemblyAttribute Include="System.Runtime.CompilerServices.InternalsVisibleTo">
<_Parameter1>DasMulli.Win32.ServiceUtils.Tests</_Parameter1>
</AssemblyAttribute>
</ItemGroup>
对于 .NET 5.0,您可以使用 AssemblyMetadata:
<AssemblyMetadata Include="Bar" Value="Baz" />