Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过powershell查找Visual Studio项目内的所有链接_C#_Visual Studio_Powershell - Fatal编程技术网

C# 通过powershell查找Visual Studio项目内的所有链接

C# 通过powershell查找Visual Studio项目内的所有链接,c#,visual-studio,powershell,C#,Visual Studio,Powershell,我对VisualStudio解决方案做了一些维护,在具体任务中,我必须删除所有链接文件并用共享程序集替换它们。我希望有一个单独的vs项目中所有链接文件的列表,但我尝试使用powershell时运气不佳。 考虑PROJ文件的这一部分 <ItemGroup> <Compile Include="..\XXX.Services.Inquiry\src\DTO\AccountingEntry.cs"> <Link>DTO\AccountingEntry.cs<

我对VisualStudio解决方案做了一些维护,在具体任务中,我必须删除所有链接文件并用共享程序集替换它们。我希望有一个单独的vs项目中所有链接文件的列表,但我尝试使用powershell时运气不佳。 考虑PROJ文件

的这一部分
<ItemGroup>
<Compile Include="..\XXX.Services.Inquiry\src\DTO\AccountingEntry.cs">
  <Link>DTO\AccountingEntry.cs</Link>
</Compile>
<Compile Include="..\XXX.Services.Inquiry\src\DTO\BalanceDetailItem.cs">
  <Link>DTO\BalanceDetailItem.cs</Link>
</Compile>
<Compile Include="..\XXX.Services.Inquiry\src\DTO\BalancesForCurrencyItem.cs">
  <Link>DTO\BalancesForCurrencyItem.cs</Link>
</Compile>
<Compile Include="..\XXX.Services.Inquiry\src\DTO\HistoricalCashSaleFlow.cs">
  <Link>DTO\HistoricalCashSaleFlow.cs</Link>
</Compile>
<Compile Include="..\XXX.Services.Inquiry\src\DTO\HistoricalChangeBceItem.cs">
  <Link>DTO\HistoricalChangeBceItem.cs</Link>
</Compile>
现在我想在表格中输入信息

AccountEntry | ..\XXX.Services.Inquiry\src\DTO\AccountingEntry.cs
BalanceDetailItem | ..\XXX.Services.Inquiry\src\DTO\BalanceDetailItem.cs
等等


有可能吗?

您可以按如下方式解析XML:

[xml]$xml = Get-Content $PathToCsprojFile
然后您可以访问所有节点,例如:

$xml.Project.ItemGroup.Compile.Include | Where-Object { $_ -eq 'MyIncludeFile.cs'}
$xml.Project.ItemGroup.Compile.Include | Where-Object { $_ -eq 'MyIncludeFile.cs'}