.net - Visual Studio 项目的依赖关系图

标签 .net visual-studio migration graph dependencies

我目前正在将一个大型解决方案(约 70 个项目)从 VS 2005 + .NET 2.0 迁移到 VS 2008 + .NET 3.5。目前我有 VS 2008 + .NET 2.0。

问题是我需要将项目一个接一个地移动到新的 .NET 框架,以确保没有 .NET 2.0 项目引用 .NET 3.5 项目。有没有任何工具可以为我提供一个很好的项目依赖关系图?

最佳答案

我需要类似的东西,但不想付费(或安装)工具来完成它。我created a quick PowerShell script that goes through the project references并将它们吐出 yuml.me改为友好格式:

Function Get-ProjectReferences ($rootFolder)
{
    $projectFiles = Get-ChildItem $rootFolder -Filter *.csproj -Recurse
    $ns = @{ defaultNamespace = "http://schemas.microsoft.com/developer/msbuild/2003" }

    $projectFiles | ForEach-Object {
        $projectFile = $_ | Select-Object -ExpandProperty FullName
        $projectName = $_ | Select-Object -ExpandProperty BaseName
        $projectXml = [xml](Get-Content $projectFile)

        $projectReferences = $projectXml | Select-Xml '//defaultNamespace:ProjectReference/defaultNamespace:Name' -Namespace $ns | Select-Object -ExpandProperty Node | Select-Object -ExpandProperty "#text"

        $projectReferences | ForEach-Object {
            "[" + $projectName + "] -> [" + $_ + "]"
        }
    }
}

Get-ProjectReferences "C:\Users\DanTup\Documents\MyProject" | Out-File "C:\Users\DanTup\Documents\MyProject\References.txt"

关于.net - Visual Studio 项目的依赖关系图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/598129/

相关文章:

c# - VS 安装项目 - .Net Framework 3.5 或更高版本的启动条件

visual-studio - 找不到匹配的二进制文件错误

winforms - 如何将设计器生成的类的基类从 System.Windows.Forms.Form 更改为我自己的 BaseForm

c# - 如何将此 C# 代码编译成 DLL?

.NET Framework 和 Visual Studio 安装顺序

c# - 如何在 VS.NET 2015 中切换上下文?

database - 在 VS for Mac (DotNet Core 2) 上使用迁移 CLI 更新数据库

mysql - 有没有更好的方法来进行数据迁移?

c# - 如何在 Fluent NHibernate 上设置 SysCache?

c# - 具有现有数据库 View 的 Entity Framework 代码优先