Dot-Net-Standard
如何將 .NET Standard 程式碼標記為符合 CLS?
標題說明了一切——如何將 .NET 標準庫標記為符合 CLS?
我用 C# 編寫了一個針對 .NET Standard 1.0 框架的簡單庫。它包括兩個列舉:
public enum Alignments { Left, Center, Right } public enum Actions { None, Total, Average, Count }當我嘗試在 .NET 4.6 項目中使用該庫時,它會將列舉標記為不符合 CLS:
警告 CS3001 參數類型“操作”不符合 CLS
我無法向 AssemblyInfo.cs 添加任何內容,因為 .NET 標準不使用它。它似乎也不支持作為 .csproj 文件中的屬性。
沒有 AssemblyInfo.cs 文件,但可以將程序集屬性添加到 .NET Standard 項目中的任何文件。
因此,將其添加到項目中的 C# 文件將使程序集符合 CLS:
using System; [assembly: CLSCompliant(true)]為了約定,我將創建一個 AssemblyInfo.cs 文件並將其放置在那裡。