C# 8.0 - 不能使用默认接口(interface)实现

标签 c# interface c#-8.0 default-implementation

我最近读到 C# 8.0 有接口(interface)默认实现,所以我进入我的项目并尝试了它,但我遇到了一个错误。 Target runtime doesn't support default interface implementation .有没有办法解决这个问题?

string CommandName { get => CommandName.ToUpperInvariant(); }
编辑
我正在使用 Console

最佳答案

你检查过你的运行时版本吗? .NET Core 3.x 和 .NET Standard 2.1 支持 C# 8.0。

更新:
由于微软困惑的命名和版本控制,.NET SDK 的最新版本被称为 .NET x.x,但它就像一个新版本的 .NET Core——它是跨平台的,可以针对不同的运行时。
C# 9.0 是自 .NET 5.x(目前最新版本)以来的默认语言版本。您可以查看不同运行时的默认语言版本以及如何配置版本here .

关于C# 8.0 - 不能使用默认接口(interface)实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59226056/

相关文章:

c# - 在 MVC 中将静态 URL 路由到 Controller 操作?

c# - WPF 绑定(bind)错误但 CollectionView 仍在过滤

c# - 如何解析传递到我的 wcf 服务操作中的soap+xml 消息?

c# - 引用不经意的代码时,可空引用类型会静默失败吗?

c# - c#8 中的公共(public)接口(interface)成员

c# - 为什么在将数据源传递给 BindingSource 之前对其调用 .OrderBy 时,我的数据源的类型似乎发生了变化?

java - Ruby 模块是否等同于 Java 接口(interface)?

c# - IDisposable.Dispose() 作为方法名称是什么意思?

java - 实现相同接口(interface)的两个类可以在其公共(public)方法中使用其他类的对象作为参数吗?

c# - 想要启用可空引用类型时如何处理可选参数?