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

但欢迎对良好实践进行任何更明确的解释或评论。

有帮助吗?

解决方案

而不是使用 控制键+k,X 你也可以直接输入 prop 然后按两次 Tab 键

其他提示

Visual Studio 还具有从私有变量生成属性的功能。

如果右键单击变量,则在弹出的上下文菜单中单击“重构”项。然后选择封装字段。这将为变量创建一个 getter/setter 属性。

我不太喜欢这种技术,因为如果你必须创建很多 getter/setter,那么使用它会有点尴尬,而且它将属性直接放在私有字段下面,这让我很烦恼,因为我通常有我的所有私有字段都分组在一起,并且此 Visual Studio 功能破坏了我的班级的格式。

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

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 专业版。

  • 将光标置于实例变量所在行。

    enter image description here

  • 按组合键 控制键+, 控制键+ 或单击鼠标右键,选择上下文菜单 Refactor \ Encapsulate Field... 然后按 OK.

    enter image description here

  • Preview Reference Changes - Encapsulate Field 对话框,按下按钮 Apply.

    enter image description here

  • 这是结果:

    enter image description here



你也 放置光标以选择属性, 使用菜单 编辑\重构\封装字段...

private int productID;

public int ProductID
{
    get { return productID; }
    set { productID = value; }
}

成为

public int ProductID { get; set; }

您还可以使用“propfull”并点击 标签 两次,将生成具有 get 和 set 的变量和属性。

如果您使用的是 Visual Studio 2005 及更高版本,您可以使用插入片段命令快速创建 setter/getter。右键单击您的代码,然后单击“插入片段”(控制键+k,X),然后从列表中选择“prop”。希望这可以帮助。

如果您使用 ReSharper,请进入 ReSharper 菜单 --> 代码 --> 生成...(或击中 替代+INS 在周围的类中),您将获得您能想到的用于生成 getter 和/或 setter 的所有选项:-)

使用 propfull 关键词。
它将生成属性和变量

我知道这比太阳还要古老,但我想我会把它作为我的答案发布,因为它就像这样做一样。

我所做的是创建我自己的代码片段,仅添加 {get; set;}. 。我做到了只是因为我发现 prop > tab 变得笨重。

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
        <Title>get set</Title>
         <Shortcut>get</Shortcut>
    </Header>
    <Snippet>
        <Code Language="CSharp">
            <![CDATA[{get; set;}]]>
        </Code>
    </Snippet>
  </CodeSnippet>

这样,您可以手动输入 PropType 和 PropName,然后输入 get > tab 它会添加 get set。这没什么神奇的,但由于无论如何我都倾向于先输入访问修饰符,所以我也可以完成名称和类型。

在 Visual Studio Community Edition 2015 中,您可以选择所需的所有字段,然后按 ctrl + .自动生成属性。您必须选择是否要使用属性而不是字段。

除了“prop”片段和自动属性之外,还有一个重构选项可让您选择现有字段并通过属性公开它。另外,如果您不喜欢“prop”实现,您可以创建自己的代码片段。此外,像 resharper 这样的第三方重构工具将为您提供更多功能,并让您更轻松地创建更高级的代码片段。如果你能负担得起的话,我会推荐Resharper。

http://msdn.microsoft.com/en-us/library/f7d3wz0k(VS.80).aspx http://www.jetbrains.com/

我的计算机上不再安装 Visual Studio(并且我使用的是 Linux),但我确实记得在其中一个菜单中的某处隐藏着一个向导,可以访问类生成器。

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

我知道这很模糊,但是检查一下,你可能会找到它。

首先获得扩展名,只需按(CTRL+Shift+X)并安装Getter设置器。之后,只需选择您的变量,然后右键单击命令调色板...并输入吸气剂...它将建议生成 get 和 set 方法,单击此...

enter image description here代表Visual Studio工具我们可以使用在线工具轻松地生成C#属性。 C# 属性生成器。

您只需简单地按一下 替代+INS 在android studio中声明变量后,您将在生成代码时获得getter和setter。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top