VS 2012可以生成类构造函数吗?

时间:2014-10-02 19:42:54

标签: c# visual-studio

VS 2012专业版可以生成一个没有任何插件的类构造函数吗?

我无法相信我找不到这样做的选择,如果做不到,那真的是一个阴谋:)

我定义了我的课程:

public class User
{
   public int Id {get;set;}
   public string Name {get;set;}
}

现在有一个快捷方式会生成构造函数,toString()方法等吗?

3 个答案:

答案 0 :(得分:3)

如果您需要默认构造函数,那么它有一个code snippet ctor


但是如果你需要一个带参数的构造函数,那么在代码中写:

User user = new User(2, "Name");

这将是一个错误,因为没有包含两个参数的构造函数,但如果将鼠标悬停在User中的new User上,则会获得蓝色下划线。点击它或将光标放在User上,然后按Ctrl + .它将为您提供生成构造函数的选项,如:

enter image description here

这将为您提供一个包含以下字段的构造函数:

public class User
{
    private int p1;
    private string p2;

    public User(int p1, string p2)
    {
        // TODO: Complete member initialization
        this.p1 = p1;
        this.p2 = p2;
    }
    public int Id { get; set; }
    public string Name { get; set; }
}

然后,您必须进入并移除p1p2并指向IdName,并在构造函数中重命名参数。这可能是您使用唯一 Visual Studio所能做的最好的事情。

请参阅:Generate From Usage - MSDN (感谢@Peter Ritchie)


考虑安装Re-Sharper,它有更好的generating not only constructor选项,但其他非常有用的代码。

答案 1 :(得分:0)

内置了

snippets,您可以添加自己的内容。 ctor将构建构造函数,我不认为ToString有什么东西,尽管你可以只输入覆盖,从列表中选择它并将它存根。

答案 2 :(得分:-1)

"构造函数"片段生成构造函数,但没有参数。为了得到它们,不幸的是你应该使用(免费或不使用)插件。这个问题已经讨论过了,例如Shortcut for creating constructor with variables (C# VS2010)

我认为在裸Visual Studio中生成参数化构造函数没有直接意义。

编辑:我应该在我的最后一句" ...之后添加,它严格适用于当前在课程#34;中定义的属性和字段。但是,按照彼得的建议,可以生成一种参数化构造函数。