【问题标题】:Is there any way to automatically add many properties on VS2019?有没有办法在VS2019上自动添加很多属性?
【发布时间】:2021-10-27 07:57:35
【问题描述】:

不要评判我,但我有一个具有 100 多个属性的对象,其中大多数是字符串。 无论如何都可以自动将它们添加到代码中,而无需大量输入? 我将它们全部放在一个具有正确大小写的文本文件中。我找了插件,但没有找到(可能是使用了错误的关键字?)

【问题讨论】:

  • json 反序列化器 ?
  • 您的意思是将它们添加为代码?不填数据? - 在前一种情况下:复制和粘贴,然后进行小的更正以匹配语法。
  • 如果你知道正则表达式。复制到可以处理正则表达式的文本编辑器中。将你的行修改为属性,你就完成了。
  • @Fildor,我有一个包含 130 列的 CSV 文件...我正在导入一个 130 列的 CSV 文件,我必须为我的模型的列或属性创建常量,并以某种方式使用列名。您如何建议这样做更优雅?
  • @wizard 我没有。有时候,我们必须做一些事情,我们知道我们不应该做。就像在这种情况下,我想这是其中一种情况,你咬你的脸颊,尽管它让你感到痛苦,但无论如何都要这样做。

标签: c# visual-studio plugins


【解决方案1】:

我假设您的文件如下所示:

Property
SomeOtherProperty
Test

最简单的方法是使用 CSV -> C# 模型生成器

步骤

改为逗号分隔,你可以用C#做到这一点:

var path = @"C:\Path\To\Your\File.txt";

var text = File.ReadAllText(path);
text = text.Replace(Environment.NewLine, ",");

File.WriteAllText(path, text);

打开文件并将其内容复制到剪贴板。

现在打开C# Class from CSV 工具。

粘贴内容,瞧你有一个 C# 模型!

【讨论】:

    【解决方案2】:

    Notepad++ 可以很容易地做到这一点。

    • 用notepad++打开你的文本文件,然后按Ctrl+H
    • 填写如下字段:
      • 搜索(.*)
      • 替换为public string \1 {get;set;}
      • 勾选“正则表达式”
      • 按“全部替换”

    然后瞧:


    请注意,这应该适用于任何处理正则表达式的编辑器(如 @Klamsi 在 cmets 部分所述)

    【讨论】: