防止对实现抽象类

时间:2017-06-05 22:22:16

标签: c# visual-studio-code intellisense

给出以下abstract类:

public abstract class AbstractTest
{
    protected abstract void B();
    protected abstract void Aa();
    protected abstract void Ab();
    protected abstract void C();
}

在Visual Studio代码中,如果我选择“实现抽象类”:

Implement Abstract Class example

这些方法是按升序字母顺序自动生成的:

Implement Abstract Class result

VS Code中是否存在允许我按照我最初定义的顺序保留方法顺序的设置?

1 个答案:

答案 0 :(得分:2)

Visual Studio和VS Code使用Roslyn语言服务来启用这些代码修复。

为了弄清楚实现中缺少哪些成员,基础类型上的Roslyn uses simple reflection

不幸的是,通过反思,有no guaranteed member order。编译的IL也没有任何成员顺序,因此从技术上讲,从编译类型中获取成员定义顺序是不可能的。唯一的方法是实际查看源文件;但这不是罗斯林的工作方式。