c# – 在将接口实现到类中时如何创建自动实现的属性?

当我第一次实现一个接口进入一个类,我想要resharper 6或visual studio 2010实现我的属性作为自动实现的属性,而不是抛出新的NonImplementedException()的默认值.我该怎么做?例如:

public interface IEmployee
{
// want this to stay just like this when  implemented into class
ID { get; set; }
}

public class Employee : IEmployee
{
// I do not want the throw new NonImplemented exception
// I want it to just appear as an auto implemented property
// as I defined it in the interface
public int ID
        {
            get
            {
                throw new NotImplementedException();
            }
            set
            {
                throw new NotImplementedException();
            }
        }
}

因为这是发生在所有的时间,我发现自己不得不经常重构和手动删除那些抛出新的UnImplimented()异常,并手动使属性被自动实现…一个痛苦!毕竟,我将其定义为自动实现的属性在我的界面.

任何帮助或建议非常感谢!谢谢.

最佳答案
注意:您的R#键盘快捷键可能不同,我正在使用Resharper 2.x键盘模式.

如果您在类上声明接口,然后使用Alt Enter并选择“实现成员”:

那么你会得到默认的实现,这恰好是抛出NotImplementedException,除非你改变了.

但是,如果您忽略建议的操作过程,而是使用Alt Insert打开“生成”菜单,则可以选择“Missing members”:

这将打开生成窗口,您可以在其中选择实现属性(或属性)为自动实现:

这将完成你想要的:

class Employee : IEmployee
{
    public int Id { get; set; }
}

转载注明原文:c# – 在将接口实现到类中时如何创建自动实现的属性? - 代码日志