【问题标题】:Import/Export VS settings programmatically?以编程方式导入/导出 VS 设置?
【发布时间】:2016-04-04 14:36:29
【问题描述】:

有没有办法通过 Visual Studio 扩展(即通过 Visual Studio API)导入/导出 Visual Studio 设置?

我想将一些特定设置导出到本地文件,就像 VS 导入和导出设置向导一样,但是,当然没有 UI 交互。

【问题讨论】:

    标签: visual-studio visual-studio-2015 visual-studio-extensions envdte


    【解决方案1】:

    有一个名为 Tools.ImportandExportSettings 的 Visual Studio 命令

    您可以使用DTE2.ExecuteCommand 执行命令

    导入/导出示例:

    dte2.ExecuteCommand("Tools.ImportandExportSettings", "/export:\"C:/temp/setttings.vssettings\"")
    dte2.ExecuteCommand("Tools.ImportandExportSettings", "/import:\"C:/temp/settings.vssettings\"")
    

    【讨论】:

    • 谢谢,太好了。您是否知道是否只能导出配置的某些特定部分?
    • 不,我不这么认为。但是,似乎并非所有 VSSettings 都使用此命令导出。将其与使用 UI 导出时获得的 .vssettings 进行比较时,该命令似乎仅返回 TextEditor 设置。
    • 命令只返回TextEditor设置?您确定它不返回最后选择的设置吗?
    • 好的,进一步调查它似乎不仅限于 TextEditor 设置,而且似乎包括许多其他设置(可能/可能全部)但它绝对不受最后选择的影响Visual Studio 2015 的导入/导出向导中的设置。
    • 对我来说,正确引用至关重要。
    【解决方案2】:

    您也可以使用 Roslyn:

    var componentModel = (IComponentModel) Package.GetGlobalService(typeof(SComponentModel));
    var visualStudioWorkspace = componentModel.GetService<VisualStudioWorkspace>();
    visualStudioWorkspace.Options = visualStudioWorkspace.Options.WithChangedOption(CSharpFormattingOptions.NewLineForElse, false);
    

    我没有尝试过,但是 api 建议您确实可以通过 roslyn 更改全局选项。

    【讨论】:

      猜你喜欢
      • 2011-04-07
      • 2021-05-24
      • 1970-01-01
      • 1970-01-01
      • 2018-03-04
      • 2012-04-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多