标题说明了一切 - 如何将.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文件中的属性。
答案 0 :(得分:7)
没有AssemblyInfo.cs文件,但可以将程序集属性添加到.NET Standard项目中的任何文件中。
因此,将其添加到项目中的C#文件将使程序集符合CLS:
using System;
[assembly: CLSCompliant(true)]
对于惯例,我将创建一个AssemblyInfo.cs文件并将其放在那里。