2010-01-09 132 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