gpt4 book ai didi

asp.net-mvc-3 - MSBuild IIS 问题

转载 作者:行者123 更新时间:2023-12-01 18:28:17 24 4
gpt4 key购买 nike

我正在使用 MSBuild 打包和发布我的 Asp.Net MVC 3、.Net 4 应用程序。我已经为 MVC 1.0、.Net 3.5 应用程序成功完成了此操作。

每当我在 .proj 文件中包含 IIS 设置 (IncludeIisSettings=true) 时,我都会收到以下构建错误:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets(2046, 5): error MSB4044: The "EscapeTextForRegularExpressions" task was not given a value for the required parameter "Text".

最佳答案

我的构建服务器上也遇到了同样的问题。

该包可以在我的开发机器上完美构建,但会失败,并出现与我的构建服务器上完全相同的错误。对我来说,问题是由于在我的构建计算机上,应用程序未向 IIS 注册而引起的。

当我在项目中的 IIS Express 中启用本地测试并以某种间接方式启用您提到的 IncludeIisSettings=true 设置时,问题就开始了。这会导致 Web 部署管道向 IIS 查询站点的详细信息。由于构建服务器没有安装 IIS 7 或 IIS Express,因此无法获取这些设置。这最终会导致上述错误,因为传递给 EscapeTextForRegularExpressions 任务的参数为空。

我的解决方案是在应用程序 .wpp.targets 文件中将 IncludeIisSettings 设置为 False(有关示例 .wpp,请参阅 here .targets 文件)。如果您明确指定 IIS 的设置,那么这应该不是问题。

我还可以通过使用 WebMatrix 将站点注册到 IIS Express 来修复构建。在 Visual Studio 中运行该网站应该具有相同的效果。

关于asp.net-mvc-3 - MSBuild IIS 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10957222/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com