C# 通过powershell查找Visual Studio项目内的所有链接
我对VisualStudio解决方案做了一些维护,在具体任务中,我必须删除所有链接文件并用共享程序集替换它们。我希望有一个单独的vs项目中所有链接文件的列表,但我尝试使用powershell时运气不佳。 考虑PROJ文件的这一部分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<
<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'}