繁体   English   中英

在VS2015中查找C#项目中引用程序集的用法

[英]Find usages of referenced assembly in a C# project in VS2015

我目前正在研究一个相当大的项目,并试图将各个部分分成自己的项目。

一个程序集让我头疼,因为在单独的项目中引用它会引发关于循环依赖的错误。

我的问题是现在如何找到项目中特定程序集引用的所有用法?

最简单的方法是从引用中删除程序集,然后尝试构建项目。 给出的所有错误将向您显示尝试在哪里使用它。

如果您在源代码目录中运行此PowerShell代码段,它将生成所有项目依赖项的文本描述。 然后在其中搜索项目名称,以查找传入和传出的依赖项。

$projectFiles = Get-ChildItem .\*\*.csproj
$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 + "] -> [" + $_ + "]"
    }
}

增加奖金; 您可以将输出复制到yuml.me ,它将为您构建解决方案依赖关系图。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM