我可以在c#中自动生成get/set方法吗?

我可以在c#中自动生成get/set方法吗?,c#,C#,用手抓取时间。我是否可以选择我的属性并单击按钮 它们看起来像这样: private bool _Monday = false; private bool _Tuesday = false; private bool _Wednesday = false; private bool _Thursday = false; private bool _Friday = false; private bool _Saturday = false; private bool _Sunday = false

用手抓取时间。我是否可以选择我的属性并单击按钮

它们看起来像这样:

private bool _Monday = false;
private bool _Tuesday = false;
private bool _Wednesday = false;
private bool _Thursday = false;
private bool _Friday = false;
private bool _Saturday = false;
private bool _Sunday = false;
还有很多。当前版本的C#(3.0)具有自动属性:

public bool Monday { get; set; }
// etc …
(现在不需要字段,支持字段由编译器生成。)
不幸的是,它们还不支持初始化表达式–但在您的示例中,您不需要它们,因为
false
bool
s的默认值。

Visual Studio的一些插件具有基于私有字段创建属性的功能(这是一个很好的示例).

我们使用它来动态提供数据类型和属性名称。我们还可以选择提供OnPropertyChanged事件

您可以右键单击字段上的,然后转到重构>封装字段。这将生成一个属性。你仍然需要一次完成每一项,但它比打字快得多

您可以与C#3.0或更高版本一起使用:

public bool Monday { get; set; }
大致相当于:

private bool _Monday;
public bool Monday
{
    get { return _Monday; }
    set { _Monday = value; }
}

Ctrl+K,Ctrl+X打开代码段。为属性声明代码段键入“prop”。您可以通过制表符浏览代码段字段并填写它们。按enter键完成代码段。

如果使用visual studio,只需键入prop,然后按tab键,visual studio将允许您选择属性的类型和名称。

@John:请仅在添加值时进行编辑…我故意省略了
private
。我们不知道OP是不是想在这里这么做。@歹徒:怎么会这样?所有这些字段都是私有的。@SLC-如果它们是私有的,为什么要将它们作为属性?因为我使用的是旧代码:(@unclaw:拥有私有字段有什么问题?据我所知,这是一种很好的做法,也是OOP@dave私有属性不能在类之外访问(我相信您知道)。因此,对于可以直接访问的内容,使用get/set方法没有多大用处。您可以在此处做得更好。只需键入“prop\t\t”以快捷方式打开“代码段”菜单