asp.net – Team Build 2010和web.config转换的问题
我正在努力让web.config转换与自动构建一起使用.
我们有一个相当大的解决方案,包含一个ASP.NET Web应用程序和八个类库.我们有三个开发人员从事该项目,到目前为止,每个人都已将解决方案“发布”到本地文件夹,然后使用文件副本部署到测试服务器.我正在尝试使用TFS 2010实现自动构建/部署解决方案. 我创建了一个构建定义,并在构建过程模板中添加了对msdeploy.exe的调用,以将应用程序部署到测试服务器.到现在为止还挺好! 然后我尝试实现web.config转换,我只是无法让它们工作.如果我在PC上本地构建和发布,则“publish”文件夹具有正确的转换后的web.config文件. 使用团队构建,转换不会发生,我只有基本的web.config文件. 我尝试在Web应用程序的项目文件中添加一个构建后的步骤,正如其他人所建议的那样,类似于: <target name="AfterBuild"> <TransformXml Source="Web.generic.config" Transform="$(ProjectConfigTransformFileName)" Destination="Web.Config" /> </target> 但是由于源web.config文件有一个“applicationSettings”部分,因此失败了.我收到了错误 找不到元素’applicationSettings’的架构信息. 我已经看到了在构建定义中向MSBuild任务添加参数的建议 /t:TransformWebConfig /p:Configuration=Debug 但是,当构建类库项目时,这可能会失败,大概是因为它们没有web.config文件. 有任何想法吗?像其他人一样,我认为这只会“正常工作”,但显然不是.这是我需要工作的最后一部分,这让我很生气.我不是一个msbuild专家,所以简单明了! 提前致谢. 道格 解决方法
我刚刚经历过这个.我们的构建有点复杂,因为我们在一个解决方案中有8个类库和9个Web应用程序.但流程是一样的.
首先摆脱你的后建立目标.你不需要那个. 您需要使用MSDeployPublish服务.这将要求在目标服务器上正确安装和配置它.有关此部分的信息,请查看以下链接: 请注意,必须使用正确的用户权限正确配置相关服务器.以下网站帮助我正确设置. http://william.jerla.me/post/2010/03/20/Configuring-MSDeploy-in-IIS-7.aspx 下一部分要求您的构建定义具有设置为执行发布的正确MSBuild参数.这些参数在Process>中输入. 3.Advanced>构建定义的MS Build Arguments行.这是一个提示: (don't change the following for any reason) /p:DeployOnBuild=True /p:DeployTarget=MsDeployPublish /p:CreatePackageOnPublish=False /p:MSDeployPublishMethod=WMSVC /p:SkipExtraFilesOnServer=True /p:AllowUntrustedCertificate=True (These control where it's going) /p:MSDeployServiceUrl="https://testserver.domain:8172/msdeploy.axd" /p:UserName=testserverbuildaccount /p:Password=buildacctpassword /p:DeployIisAppPath="MyApp - TESTING" 显然,必须在目标服务器上的IIS中配置用户才能访问该axd(请参阅前面的链接). IisAppPath是目标服务器上的网站名称. 您不必为配置转换执行任何特殊操作,因为构建本身将为您处理.只需在Process>行中输入正确的设置即可. 1.要求>要构建的项目>要构建的配置. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 使用MVC时,如何调用Controller Action和Pas
- ASP.Net错误 – 类型与控件类型不兼容
- asp.net-mvc-routing – Web API路由和Web API帮助页面:如
- oauth-2.0 – 覆盖AccessTokenExpireTimeSpan
- asp.net-mvc-3 – PrepareResponse().AsActionResult()抛出
- asp.net-mvc – ASP.Net MVC和jQuery表单插件上传文件
- asp.net-mvc – ASP.Net身份登录重定向强制协议(Https)
- asp.net mvc 中 一种简单的 URL 重写
- asp-classic – IIS Express是否支持ASP Classic?
- asp.net-mvc – 防止在asp.net MVC 3中验证部分表单