asp.net - 如何使用 MSBuild 为此项目文件夹中的所有文件创建 MSdeploy 包

标签 asp.net iis msbuild msdeploy

我正在尝试通过命令行使用 msbuild 创建一个 Web 部署包。我到处寻找,发现了以下命令

 msbuild myproject.csproj /t:package

虽然它对我有用,但它只给我当我们通过 Packge/Publish Web 选项卡创建 Web 部署包并从下拉菜单中选择“仅运行此应用程序所需的文件”选项时 Visual Studio 给我们返回的内容。但我希望我的 Web 部署包看起来与我从下拉菜单中选择“此项目文件夹中的所有文件”选项时得到的完全相同。我浏览过这样的链接 http://sedodream.com/2010/05/01/WebDeploymentToolMSDeployBuildPackageIncludingExtraFilesOrExcludingSpecificFiles.aspx .

但我想知道我真的需要自定义我的 .csproj 文件(就像那篇文章中描述的那样),因为我想要的只是一个用于 msbuild 的命令行(显然比我上面提到的更复杂)可以模仿“此项目文件夹中的所有文件”选项,该选项使用项目原始 bin 文件夹中的所有 .dll 填充“Web 部署包的 bin 文件夹”,并生成一个更全面的包。

最佳答案

在命令行中只需添加 /p:FilesToIncludeForPublish=AllFilesInProjectFolder到您的 msbuild 调用。当您这样做时,您可能还想传递特定配置来构建 /p:Configuration=Release

所以:

 msbuild myproject.csproj /t:package /p:FilesToIncludeForPublish=AllFilesInProjectFolder /p:Configuration=Release

提示:其中许多设置都存储在您的项目文件中。在记事本中打开文件并比较更改某些设置时所做的更改。 <propertygroup> 中的任何项目通常也可以使用 /p: 通过命令行传递参数。

关于asp.net - 如何使用 MSBuild 为此项目文件夹中的所有文件创建 MSdeploy 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29996480/

相关文章:

c# - 在两个日期范围之间相交的天数

c# - Entity Framework 代码优先和 ASP.NET 成员资格

database - WiX:数据库卸载

.net - 如何使用 Team Build 2010 部署 Windows 服务项目

c# - 有人有过从 MSBuild 调用 Rake 以获得代码生成和其他好处的经验吗?进展如何?你有什么想法/建议?

c# - 使用 Windows 身份验证的 ASP.Net Core 3.1 中的空闲超时

css - 是否有任何程序可以将多个图像合并为一个以用于 CSS 并减少往返次数?

c# - 默认 Blazor PWA 项目无法托管到 IIS 中

iis - 使用 Powershell 添加 IIS 8.5 自定义日志记录字段

c# - 预构建 MSBuild 任务以更新与构建的 exe 不同步的 AssemblyInfo