2010-01-09 82 views

回答

2

如果您只考虑Windows Azure默认提供的内容,则答案为否:要添加一个ASPX页面,您必须重新部署整个Azure包。

那么,如果你是愿意考虑更复杂的方案,那么,是的,这可能是。基本上,您需要WebRole中的一些引导程序逻辑,从云存储中检索文件并将其粘贴到Web角色中的本地文件目录中。

通过这样做,通常会发生IIS7行为,并且新添加的ASPX文件在您的web应用程序中可见。

不知何故,我们最终在Lokad.Cloud内为工作者角色(而非Web角色)实施了类似的模式。你可以从这个项目中获得灵感来设置我在这里建议的方案。

+0

非常感谢您的回复。为了确认,你的意思是说,所有新的aspx文件,我需要放入某个存储帐户和应用程序中,从存储帐户中提取新的aspx文件并将其存储在应用程序目录中,之后新添加的aspx将会在我的网络角色应用程序中可用? – 2010-01-11 04:25:50

+0

是的,如果你遵循一个经典的asp.net网站,这应该工作。尽管如此,我还没有开展任何现场实验来使其在实践中发挥作用。据我记得的文档,有1个问题:你的webrole没有对根目录的写访问权限,但是任何子目录都可以工作。 – 2010-01-12 14:22:55

+0

从Azure论坛得到了另一个答复: 你好,如果你打算在包中包含页面,你将不得不再次上传这个包。但是,ASP.NET也支持VirtualPathProvider。因此,您可以将单个页面上传到Blob存储,并使用VirtualPathProvider来检索它。看看http://msdn.microsoft.com/en-us/library/system.web.hosting.virtualpathprovider.aspx。主持人Yi-Lun LuoMSFT, – 2010-01-13 00:24:14