3

我有我已经更新的界面。我想将派生类中的所有更改实现为自动属性,但它们是通过 NotImplemented 异常实现的。有没有办法将 ReSharper 6 创建的属性设置为 autoproeprty?

4

2 回答 2

3

目前有两种不同的方法来实现缺少的接口成员。

第一个是通过在实现类的主体中按Alt+并选择 来调用的。在结果对话框中,您可以选择将属性实现为自动属性。InsImplement missing members

第二个是通过在实现类的定义语句的红色波浪上按Alt+来调用的,然后选择. 在这种情况下,生成的成员的主体由- 其中的设置控制,其中“自动属性”不是一个选项。EnterImplement membersReSharper | Options... | Languages | Common | Members Generation

在第二种情况下,有一个未解决的 YouTrack 问题来改进 UI 以提供自动属性选项 - JetBrains 已将其标记为关键,因此它可能会进入 6.1,否则我们将不得不等待 7。

于 2011-09-01T09:03:05.627 回答
0

这是一个hacky解决方法:

  1. 暂时把接口改成类。
  2. 制作所需的属性public并将其定义复制到剪贴板
  3. 执行 Push Members Down 重构,这会将成员复制到实现者中。
  4. 将类恢复为接口并将属性重新添加(使用粘贴)到接口。

不得不这样做很糟糕,但它确实有效。

于 2012-03-29T21:24:24.003 回答