由於使用了URI映射,我的Silverlight應用程序使用導航框架,它的URL具有非常漂亮的結局。但前端看上去仍然討厭的,如:如何在Silverlight導航應用程序中修改URL的前端?
http://server:port/SilverlightPage.aspx#/uri-mapped-portion
我怎樣才能獲得「SilverlightPage.aspx#」部分看起來更好,最好刪除「的.aspx#」?
由於使用了URI映射,我的Silverlight應用程序使用導航框架,它的URL具有非常漂亮的結局。但前端看上去仍然討厭的,如:如何在Silverlight導航應用程序中修改URL的前端?
http://server:port/SilverlightPage.aspx#/uri-mapped-portion
我怎樣才能獲得「SilverlightPage.aspx#」部分看起來更好,最好刪除「的.aspx#」?
你可以使用URL路由,其可作爲ASP.NET MVC的一部分,或者定期ASP.NET http://msdn.microsoft.com/en-us/library/cc668201.aspx
編輯:要回答你在評論中的問題:
我還沒有與我自己,但如果你看看「使用路由與WebForms」部分,它應該詳細解釋它。從我收集你可以使用
routes.Add("SomeRoute", new Route("SilverlightPage",new CustomRouteHandler("~/SilverlightPage.aspx")));
不過,即使其中的任意一種方法,有沒有辦法擺脫「#」的? – Dov 2009-12-08 16:57:19
#很重要,因爲這意味着您可以在不重新加載頁面的情況下更改URL。像Silverlight這樣的組件是用來改變url而不實際重新加載頁面的技巧。 #僅在客戶端進行評估,這就是爲什麼這是有效的。 – Bryant 2009-12-08 19:59:34
嗯,我試過你的第一個建議,因爲它是最簡單的,但現在我仍然可以看到URL中的Default.aspx#。我現在明白爲什麼#有,但「Default.aspx」呢?這是否嚴格是從ASP.NET開發服務器運行它的結果,並且當我將它放到誠實善良的IIS服務器中時,它不會顯示出來? – Dov 2009-12-08 22:07:44
謝謝,但在這種情況下,路由字符串會是什麼樣子? – Dov 2009-12-08 17:33:49