kee*_*ney 14 nuget nuget-package
是否可以强制nuGet包覆盖现有文件?我需要一个很好的方法来应用3个类似项目的补丁(文件,DLL,资源),这可能是一个很好的解决方案.
byt*_*der 12
它可以通过powershell和包依赖来实现......
我有一个为ASP.NET MVC创建的NuGet包,它包含我想要添加到标准Mvc项目的所有文件(DisplayTemplates,EditorTemplate,Extensions,BaseController等).让我们说它叫做"Company.WebMvc"
我创建了另一个名为"Company.WebMvc-Prep"的NuGet包,它有一个Install.ps1脚本,可以从标准的Mvc项目中删除任何我不想要的东西.这是删除现有Scripts文件的代码示例...
param($installPath, $toolsPath, $package, $project)
#Remove Script Files
$scripts = $project.ProjectItems | Where-Object { $_.Name -eq "Scripts" }
if ($scripts) {
$scripts.ProjectItems | ForEach-Object { $_.Delete() }
}
Run Code Online (Sandbox Code Playgroud)
然后我将"Company.WebMvc-Prep"作为"Company.WebMvc"的依赖项.为什么?因为在NuGet添加内容文件夹中的文件后运行Install.ps1(通常).我需要它先删除文件然后添加新文件.所以当你打电话给...
Install-Package Company.WebMvc
首先安装Company.WebMvc-Prep,因为它是一个依赖项(运行Install.ps1)
然后安装Company.WebMvc,添加您的内容.
它的长短是......您可以通过NuGet包覆盖项目中的现有内容.
PS请记住,您也可以使用部分类来隔离NuGet包代码和项目特定代码.
| 归档时间: |
|
| 查看次数: |
7829 次 |
| 最近记录: |