我目前正在将一个大型解决方案(约 70 个项目)从 VS 2005 + .NET 2.0 迁移到 VS 2008 + .NET 3.5。目前我有 VS 2008 + .NET 2.0。
问题是我需要将项目一一移动到新的 .NET 框架,确保没有 .NET 2.0 项目引用 .NET 3.5 项目。有没有什么工具可以给我一个很好的项目依赖关系图?
我需要类似的东西,但不想付费(或安装)工具来完成它。我创建了一个快速的 PowerShell 脚本来遍历项目引用 http://blog.dantup.com/2012/05/free-dependency-graph-generation-using-powershell-and-yuml并将它们吐出yuml.me http://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"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)