发布我的Web应用程序项目后,世界上最简单的任务(见下文)没有被执行.知道为什么吗?
<Target Name="AfterPublish">
<Copy SourceFiles="C:\A.txt" DestinationFiles="C:\B.txt" />
</Target>
Run Code Online (Sandbox Code Playgroud) 当我发布我的ASP.NET MVC应用程序时,它会生成一个app_offline.htm文件,以便在网站更新网站时使网站脱机,然后在发布成功后删除该文件.
这很酷,我真的很喜欢这个想法,但是我想创建我自己的自定义app_offline.htm文件,该文件是发布操作所知道的,并将它放在不影响我的开发站点的地方 - 也就是说它不在我的开发站点的根目录一直在脱机.
编辑:从Scott Gu关于app_offline.htm的帖子的评论来看,似乎用VS 2005无法自定义app_offline.htm文件 - 这是用VS 2008和现在的VS 2010改变的吗?
asp.net asp.net-mvc publish visual-studio-2010 app-offline.htm
我用C#编写了一个WCF Web服务.我最初是自托管它,然后决定在我的PC上本地运行的IIS上托管它.虽然服务正在运行,但我不了解部署过程的几个方面:
首先,在IIS中托管时此服务的URL与我在web.config中指定的URL不对应.我在那里指定了" http:// localhost:8000/MyServices/OrderService ",这是我自我托管时使用的.现在我已经部署到IIS,URL已变为" http:// localhost/MyServices/OrderService ".为什么没有从我的配置文件中提取URL?
其次,为了托管Web服务,我在IIS中创建了一个新的网站(除了现有的"默认网站").我将物理路径设置为c:\ inetpub\wwwroot(不知道这是否正确)并将其他参数保留为默认值.然后我将我的/ bin文件夹,我的.svc文件和我的web.config复制到此文件夹中.这相当于"虚拟目录"吗?
最后,直到(在IIS中)我选择"转换为应用程序"之前,该服务才起作用.为什么有必要选择"转换为应用程序"?
任何人都可以解释将Visual Studio中的简单Web服务发布到IIS中的正确步骤,或者指出一些好的文档以便我能理解这个过程吗?
****编辑原创*****花了更多时间研究这个,我发现了以下内容:
您可以手动执行复制到相同的效果.
答案是在IIS上托管时完全忽略baseAddress.
我试图在发布事件后调用简单的任务.当我说"发布"时,我的意思是在Visual Studio中发布,右键单击项目并按"发布...".我在项目文件中包含了(导入的)目标文件,因为我已经在Build事件上测试了它,所以工作正常.我在http://msdn.microsoft.com/en-us/library/ms366724.aspx上发现有AfterPublish事件应该做我需要的事情,但事实并非如此.我不确定这是否应该在Visual Studio中的Publish上触发,有人请澄清这一点.我的问题是如何在Visual Studio中的Publish上触发目标文件中的任何类型的任务?
我在目标文件中尝试了这个:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="AfterPublish">
<Message Label="Test"></Message>
<Warning Label="Test"></Warning>
</Target>
</Project>
Run Code Online (Sandbox Code Playgroud)
我正在使用Visual Studio 2010.
编辑:
我实际上正在寻找在Visual Studio中的Publish上执行某些操作的任何方法.我还在考虑添加Build Events,但我不知道如何确定它是否正在发布.
编辑:@Alexey Shcherbak感谢您的快速回复.我在我的MSBuild输出中得到这个:
12/10/2012 12:29:40 AM: Done executing task "CallTarget".
12/10/2012 12:29:40 AM: Done building target "PipelinePreDeployCopyAllFilesToOneFolder" in project "PublishTestApp.csproj".
12/10/2012 12:29:40 AM:Done building project "PublishTestApp.csproj".
Deleting existing files...
Publishing folder /...
Publishing folder Account...
Publishing folder bin...
Publishing folder Scripts...
Publishing folder Styles...
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========
========== Publish: …Run Code Online (Sandbox Code Playgroud) 我们有一个ASP NET MVC网站解决方案,团队中只有三分之一的人能够发布到实时服务器.当我和另一位同事尝试从VS 2010发布网站时,输出窗口将显示错误:
无法创建网站'\ blah'.路径'\ blah'不存在或您无权访问.指定的路径无效.
这指向我的帐户的登录问题,但是可以发布该网站的开发人员是与我相同的所有用户组的成员.作为一个长镜头,我们提供Everyone了对该文件夹的完全访问权限,但这并没有解决问题.
任何人都可以建议更详细的方法来尝试找出我们为什么不能发布该网站?必须在某处允许我的同事从Visual Studio发布该站点的权限集.
干杯.雅.
我正在尝试将我的项目从我的开发机器发布到临时环境.我会在visual studio中右键单击该项目,然后单击"发布".大多数文件都会发布得很好,但有些文件给我带来了问题.在输出日志中,有多条错误消息,全部说明:
无法将"XXX.ext"添加到网站.无法添加文件'XXX.ext'.访问被拒绝(550)
我正在关注此事:但我没有找到"只读"属性复选框...
你有什么想法吗?提前致谢.
只是想知道是否有人知道如何将保存的发布配置文件设置为默认即在我选择发布时自动加载的配置文件.我喜欢新的配置文件方法,但是我在开发过程中不得不一遍又一遍地重新选择相同的配置文件.
我想更新应用程序的描述以及Play商店的屏幕截图,但应用程序保持相同的相同版本号(我不想发布新应用程序,因为应用程序中的任何内容都未更改)
这是可能的还是google会要求更新应用程序.
我有简单的angular2-cli应用程序(一页有模型驱动形式 - 不涉及路由器)."ng服务"一切正常.我用ng build --product制作了生产版本.我将所有./dist文件夹内容复制到C:\ inetpub\wwwroot下的新文件夹中.我从IIS管理控制台制作了虚拟应用程序.Defualt应用程序文件是index.html.我浏览到app uri,我只得到"正在加载..."的页面.我尝试没有--product开关(只有ng build)的构建,但结果是一样的.Angular app未加载.是否还需要在IIS上发布角度应用程序?
我一直在尝试将我的octopress网站(基于jekyll)加载到我的本地网络.没有服务器,我只想在共享文件夹上本地使用它.
每次我将它部署到本地文件夹时,css和js以及背景图像链接都会被破坏.
rsync,github和heroku等可用选项都需要ssh和密码.这可以在这里找到:http://octopress.org/docs/deploying/
有没有一个rake选项可以帮助解决这个问题?
Kikito,非常感谢你的指导.
我刚刚实现了它并分叉了一个git存储库.但是有一个问题.我使用这种技术在Dropbox Public,本地目录和Web主机上托管相同的站点.我不得不添加一个额外的/和斜杠加起来点击链接.这是repo和dropbox链接:
https://github.com/originalsurfmex/jekyll-relative-bootstrap
一切都按照你的说法工作,但我认为如果你或其他人看一下布局中的局部和链接,你会有更好的主意.
publish ×10
iis ×2
msbuild ×2
android ×1
angular ×1
angular-cli ×1
asp.net ×1
asp.net-mvc ×1
c# ×1
css ×1
deployment ×1
google-play ×1
iis-7 ×1
image ×1
jekyll ×1
permissions ×1
static ×1
task ×1
web-services ×1