这里的“生成”指的是为特定选定的(一组)变量自动生成所需的代码。

但是,任何关于良好实践的更明确的解释或评论都是受欢迎的。


当前回答

你说的生成是指自动生成吗?如果你不是这个意思

Visual Studio 2008有一个最简单的实现:

public PropertyType PropertyName { get; set; }

在后台,这将创建一个隐含的实例变量,您的属性将存储和检索到该变量。

然而,如果你想在你的属性中放入更多的逻辑,你必须有一个实例变量:

private PropertyType _property;

public PropertyType PropertyName
{
    get
    {
        //logic here 
        return _property;
    }
    set
    {
        //logic here
        _property = value;
    }
 }

以前版本的Visual Studio也总是使用这种手工方法。

其他回答

在visual studio 2019中,像这样选择您的属性:

然后按“Ctrl+r” 然后按“Ctrl+e”

将出现一个对话框,向您显示将要发生在代码上的更改的预览。如果一切正常(大多数情况下),按OK。

首先获得扩展只需按(Ctrl + Shift + X)和安装getter setter ....

在此之后,只需选择你的变量和右键单击。转到命令面板…

类型getter…它将建议generate get和set方法。点击这个…

我的机器上不再安装Visual Studio(我使用的是Linux),但我确实记得在其中一个菜单中隐藏了一个向导,可以访问类构建器。

使用此向导,您可以定义所有类的详细信息,包括方法和属性。如果我没记错的话,有一个选项可以让Visual Studio自动为你创建setter和getter。

我知道这很模糊,但仔细看看,你可能会发现。

你说的生成是指自动生成吗?如果你不是这个意思

Visual Studio 2008有一个最简单的实现:

public PropertyType PropertyName { get; set; }

在后台,这将创建一个隐含的实例变量,您的属性将存储和检索到该变量。

然而,如果你想在你的属性中放入更多的逻辑,你必须有一个实例变量:

private PropertyType _property;

public PropertyType PropertyName
{
    get
    {
        //logic here 
        return _property;
    }
    set
    {
        //logic here
        _property = value;
    }
 }

以前版本的Visual Studio也总是使用这种手工方法。

我使用Visual Studio 2013 Professional。

将光标放在实例变量的行上。 按组合键“Ctrl + R”、“Ctrl + E”或单击鼠标右键。选择上下文菜单重构→封装字段…,然后按“OK”。 在预览引用更改-封装字段对话框中,按下“应用”按钮。 这是结果:

您还可以放置光标以选择属性。使用菜单编辑→重构→封装字段…

其他信息: 从c# 3.0(2007年11月19日)开始,我们可以使用自动实现的属性(这只是语法糖)。 和 private int productID; 公共int ProductID { 返回productID;} set {productID = value;} } 就变成了 公共int ProductID{获取;设置;}