NuGet 依赖性文件



假设我有一个 WPF 控件,我想通过 NuGet 将其部署为源代码转换。

该控件有 2 个与之关联的文件:UserControl.xaml.cs 和 UserControl.xaml。

当我通过 NuGet 部署它时,我获取了目标项目中的文件,但它们在解决方案资源管理器中没有层次结构。 这是因为 NuGet 不知道如何在 .csproj 文件中添加 DependentOn 属性。

有解决方法吗? 此功能是否在 NuGet 的路线图中?

谢谢塔尔

答案是 Powershell,特别是 Install.ps1 文件,如果放置在 NuGet 包中的/tools 文件夹中,该文件将在安装时自动执行。以下是应该可以解决问题的代码:

   参数($installPath, $toolsPath, $package, $project)    $buildProject = @([Microsoft.Build.Evaluation.ProjectCollection]::GlobalProjectCollection.GetLoadedProjects($project.全名))[0]     $file = $buildProject.Xml.Items |其中包含 -eq "UserControl.xaml.cs"    $propertyToEdit = $file。元数据 |其中名称 -eq "依赖"    如果 (!$propertyToEdit)    {        $file。AddMetaData("DependentUpon", "UserControl.xaml") |出空    }    $project。保存()

您可能不会立即在 Visual Studio 界面中看到更改,但如果卸载/重新加载或关闭/打开项目,您将看到它。

最新更新