Dot-Net-Standard

如何將 .NET Standard 程式碼標記為符合 CLS?

  • February 28, 2018

標題說明了一切——如何將 .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)]

參考:NetStandard v1.0 文件

為了約定,我將創建一個 AssemblyInfo.cs 文件並將其放置在那裡。

引用自:https://stackoverflow.com/questions/49026559