.net core 是否有任何理由将.NET标准或.NET核心库标记为符合CLS

.net core 是否有任何理由将.NET标准或.NET核心库标记为符合CLS,.net-core,.net-standard,cls-compliant,.net Core,.net Standard,Cls Compliant,是否有任何理由将.NET标准或.NET核心库标记为符合CLS的? 据我了解: 如果我用C-sharp构建一个.NET Framework库并使其完全符合CLS,那么所有类型/成员都可以从.NET Framework库或用VB NET、F-sharp等编写的应用程序(不知道所有CLR语言)中使用和调用,并引用我的库 在使用.NET标准和.NET核心时,这不再相关了吗?除了C-sharp之外,还有哪些语言可以引用.NET标准库? 但是,如果有几种语言,并且您希望使库符合CLS,那么这将很困难,因为许

是否有任何理由将.NET标准或.NET核心库标记为符合CLS的?

据我了解: 如果我用C-sharp构建一个.NET Framework库并使其完全符合CLS,那么所有类型/成员都可以从.NET Framework库或用VB NET、F-sharp等编写的应用程序(不知道所有CLR语言)中使用和调用,并引用我的库

在使用.NET标准和.NET核心时,这不再相关了吗?除了C-sharp之外,还有哪些语言可以引用.NET标准库?

但是,如果有几种语言,并且您希望使库符合CLS,那么这将很困难,因为许多.NET标准类型都不符合CLS

一些不符合CLS的类型:

  • Microsoft.Extensions.FileProviders.IFileProvider
  • Microsoft.Extensions.Logging.ILogger
  • Microsoft.Extensions.Logging.iLogger工厂
在GitHub上存在与此相关的问题:

但据我所知,不会有任何变化:


是否要构建符合CLS的库取决于您自己。我们不能替你决定


请注意,分析仪仅要求您正确标记组件。它没有说明是否应该标记为符合。它只是说你应该明确地知道它是否合规,这可以是一个明确的“不,不是”

我明白你的意思。也许我表达得不好。我的意思是,当这些库中的许多类型都不符合CLS时,构建符合CLS的程序集(.NET Standard/.NET Core)将非常困难。这是真的。但同样:我们无法决定这是否值得你这么做。你似乎知道技术事实,你更有资格决定你的目标受众是否需要它,这是你的决定。我已经重新表述了我的问题。据我所知,我表达错了。我的问题不是我是否应该,而是是否有任何理由。