說URL的部分我有3個版本的網站:A,B和C.我想我的網址,以這樣的形式:如何自動包括與Asp.Net MVC
{siteType}/{controller}/{action}/{id}
其中siteType
等於a
,b
或c
。
當用戶在網站的A版本中時,他們應該呆在那裏;因此所有生成的網址都應具有a
的siteType。同樣,對於B和C.
我不想在生成URL時明確指定siteType
- 我希望它自動生成。此外,siteType
參數將永遠只用於一個地方 - 在基本控制器類中被忽略的RenderView
方法 - 它將使用siteType參數爲該版本的網站挑選出正確的視圖,CSS等。因此我對siteType
沒有興趣作爲我的行爲的一個論據。只有RenderView
方法需要訪問它。
達到此目的的最佳方法是什麼?
是的,但重點是我不希望將siteType添加到每個ActionLink或生成的任何其他URL。由於它在任何地方完成,我應該能夠自動添加到一個地方。 – darasd 2009-08-27 08:27:20
您不必通過「手動」將siteType添加到每個網址。在默認例程中設置一次,它將被添加。如果您想在siteType之間切換,那麼您必須將siteType添加到該操作鏈接。 我的所有鏈接都是這樣的:<%= Html.ActionLink(「Linktext」,「Action」,「Controller」%>除了切換語言的鏈接之外,動態鏈接呈現鏈接並自動添加siteType爲: Linktext – griti 2009-08-27 08:56:40
你知道嗎,我認爲你是對的!它似乎是自動添加的,如果沒有明確添加到例如ActionLink中,它會自動添加當前url的值而不是默認值。 – darasd 2009-08-27 10:15:31