visual studio解决了所有类的解决方案

时间:2017-04-06 17:34:57

标签: visual-studio macros ide visual-studio-2017 visual-studio-extensions

在Visual Studio 2015中,我使用Macros for Visual Studio来迭代解决方案中的所有文件并格式化它们(RemoveAndSortCollapsetoDefinitions)。最近我将我的视觉工作室更新到2017年,但我发现Visual Studio的Macros还没有。所以我想知道有没有其他方法来格式化解决方案中的所有类?

这是我在Visual Studio的宏中的脚本:

iterateFiles();

function iterateFiles() {
    for (var i = 1; i <= dte.Solution.Projects.Count; i++) {
        iterateProjectFiles(dte.Solution.Projects.Item(i).ProjectItems);
    }
}

function iterateProjectFiles(projectItems) {
    for (var i = 1; i <= projectItems.Count; i++) {
        var file = projectItems.Item(i);

        if (file.SubProject != null) {
            formatFile(file);
            iterateProjectFiles(file.ProjectItems);
        } else if (file.ProjectItems != null && file.ProjectItems.Count > 0) {
            formatFile(file);
            iterateProjectFiles(file.ProjectItems);
        } else {
            formatFile(file);
        }
    }
}

function formatFile(file) {
    dte.ExecuteCommand("View.SolutionExplorer");
    if (file.Name.indexOf(".cs", file.Name.length - ".cs".length) !== -1) {
        file.Open();
        file.Document.Activate();

        // Format the document
        dte.ExecuteCommand("Edit.RemoveAndSort");
        dte.ExecuteCommand("Edit.CollapsetoDefinitions");


        file.Document.Save();
        file.Document.Close();
    }
}


  [1]: https://marketplace.visualstudio.com/items?itemName=VisualStudioPlatformTeam.MacrosforVisualStudio

0 个答案:

没有答案