如何在Visual Studio中生成包含所有属性的ToString()方法?
在Visual Studio中生成包含所有属性的ToString()方法
嘿,我太懂你这种需求了——Eclipse里一键生成包含所有实例变量的toString()真的是刚需,刚转Visual Studio的时候我也卡过这个问题!别担心,VS其实有原生的方法能实现和Eclipse一模一样的效果,甚至更灵活,下面给你一步步讲:
方法一:使用快速操作(最推荐)
- 打开你的类文件,把光标放在类的内部(比如类名称后面、空白代码行都可以)
- 按下快捷键
Ctrl+.(或者右键点击,选择「快速操作和重构」) - 在弹出的菜单里找到「生成ToString()」选项并点击
- 这时会弹出一个配置对话框,你可以:
- 一键点击「全选」把所有属性/字段都包含进去
- 自定义生成代码的格式(比如用字符串插值、StringBuilder,或者是否包含类的命名空间)
- 调整属性的输出顺序
- 确认后,VS就会自动生成包含所有选中属性的
ToString()方法,示例效果如下:public class Person { public string Name { get; set; } public int Age { get; set; } public string Email { get; set; } public override string ToString() { return $"Person {{ Name = {Name}, Age = {Age}, Email = {Email} }}"; } }
方法二:右键菜单直接生成
如果你不习惯用快捷键,也可以右键点击类内部的空白处,依次选择「快速操作和重构」→「生成ToString()」,后续步骤和上面一样。额外提示:扩展增强(可选)
如果原生功能的灵活性还满足不了你,比如想要更个性化的输出格式,可以安装像ReSharper、CodeMaid这类代码工具,它们的ToString()生成功能会提供更多自定义选项,不过原生方法已经足够覆盖大部分场景啦。
之前我也以为只能生成那个调用base.ToString()的空实现,后来偶然发现这个快速操作,完全解决了从Eclipse转过来的适配问题,希望对你有用!
内容的提问来源于stack exchange,提问作者HoosierDude
相关产品推荐
相关产品推荐

