我目前正在将一个大型解决方案(大约70个项目)从VS2005+ .NET 2.0迁移到VS2008+ .NET 3.5。目前我使用的是VS2008+ .NET 2.0。
问题是,我需要一个接一个地将项目移动到新的.NET框架,以确保没有.NET 2.0项目引用.NET 3.5项目。有没有工具可以给我一个很好的项目依赖关系图?
发布于 2012-05-07 00:52:39
我需要类似的东西,但不想花钱(或安装)一个工具来做这件事。我使用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"https://stackoverflow.com/questions/598129
复制相似问题