跨接口更改属性名称?

时间:2018-01-10 17:01:09

标签: c# .net visual-studio

我试图更改属性的名称,并在继承该类(接口)的所有类中更改它,而不必逐个手动执行此操作?

class ISomething { 
    string SomeString { get; }
}

class A : ISomething 
{
    public string SomeString => "Something 1";
}

class B : ISomething 
{
    public string SomeString => "Something 2";
}

class C : ISomething 
{
    public string SomeString => "Something 3";
}

2 个答案:

答案 0 :(得分:1)

如果您更改了"界面"要成为一个实际的接口,您只需右键单击ISomething.SomeString并重命名它,它将更改实现它的所有类。

目前,您无法做到这一点,因为ISomething是一个类。这意味着每个派生类的SomeString和ISomething的SomeString甚至都不相关。您无法从A访问ISomething.SomeString,因为它不是ISomething中的公共属性。如果该类将SomeString作为公共属性(通过向其添加public来尝试它),那么派生类将警告您他们的SomeString隐藏了ISomething.SomeString。

答案 1 :(得分:0)

在Visual Studio中,突出显示要重命名的变量/对象,然后右键单击突出显示的文本。从菜单中选择“重命名...”选项。

enter image description here