2012-04-04 129 views
1

我是新的Windows Azure。我创建了简单的HelloWorld ASP.NET azure应用程序并将其发布。我知道我可以通过点击项目上的右键在Visual Studio中重新发布整个应用程序,然后发布它。但是,它可能只更新一个文件(aspx页面,图片等)如何更新asp.net Azure应用程序

谢谢! 亚历山大问候。

回答

0

您可以使用webdeploy(它应该做的所有文件的选择性update)或通过remote desktop连接并更新某些文件自己。 就像评论和MSDN所说:这两种方式都不推荐/可用于生产部署。它们只是作为某些开发场景的捷径。

+0

请不要通过RDP更新。角色实例出现问题时(例如,本地磁盘被移动,或者由于硬件问题而移动到另一个框),您的更改将消失。 – 2012-04-04 13:52:35

+0

我试图澄清我的答案。 – 2012-04-04 13:57:14

1

如果要更新单独的文件,如图片,一件事情你可以做的是所有图像(和CSS,JavaScript和任何其他静态内容)存储在Blob存储。这有几个优点:

  • 易于单独上传新文件,既有免费的工具和支付工具。例如:Cloudberry Explorer是一个免费的应用程序,并且Cerebrata Cloud Storage Studio是付费应用,它们都让你单独管理的容器和斑点。
  • 较小的部署包,因为你已经删除的图像和其他大型文件在IIS
  • 负荷较小,因为图像请求直接转到Blob存储,而不是你的角色实例

不能存储blob中的aspx文件,尽管您可以将诸如html之类的静态内容存储在blob中。要更新aspx,您基本上正在更新部署。现在,您可以将其作为“升级”来执行,不会中断IP地址,并且如果您有多个实例,则不会在升级过程中取消服务。

+0

非常感谢!你能告诉我什么是“升级”? – 2012-04-04 14:06:08

+0

当您发布时,您可以“删除并重新部署”或“升级”。在前者中,因为所有内容都被拆除并重建,您将失去IP地址。在后者中,新部署包替换旧部署包,同时保留部署。如果您有2个或更多实例,则升级将以至少一个实例保持运行的状态完成,而其他实例将升级为您推送的新代码。 – 2012-04-04 14:08:34

+0

另请参见[本文](http://blogs.msdn.com/b/windowsazure/archive/2011/10/19/announcing-improved-in-place-updates.aspx),它显示了什么可以是在升级过程中完成,无需删除+重新部署。 – 2012-04-04 14:09:19

1

我想如果你刚刚学习Windows Azure,最有用的答案是“你不能。” Windows Azure的工作方式是更新应用程序,创建完整的软件包并再次部署。

这是不是说,大卫的答案是不是也是正确的。我只是想直接回答“我部署后如何只更改一个文件?”的问题。

+0

+1 - 良好的说明。 – 2012-04-04 14:28:11