2009-08-16 3 views
0

в моем файле Site.Master, у меня есть следующий код:как у меня есть ссылки на корневые контроллеры в Site.Master в ASP.NET MVC

<map name="indexMap"> 
    <area shape="rect" coords="3,9,59,24" href= "Home"> 
    <area shape="rect" coords="73,8,146,24" href="CourseBio"> 
    <area shape="rect" coords="168,8,235,24" href="ProShop"> 
    <area shape="rect" coords="257,7,336,24" href="ScoreCard"> 
    <area shape="rect" coords="358,8,480,28" href="OutingsandEvents"> 
    <area shape="rect" coords="502,7,573,27" href="Members"> 
    <area shape="rect" coords="589,8,666,28" href="Directions"> 
    <area shape="rect" coords="690,9,767,25" href="ContactUs"> 
</map> 

который работает нормально, если я нахожусь:

http://mysite.com/Home 

но когда я нахожусь:

http://mysite.com/Home/Welcome 

и я нажмите на одну из этих ссылок, он идет:

http://mysite.com/Home/ProShop 

вместо того, что я хочу, что:

http://mysite.com/ProShop 

как я могу иметь ссылки в Site.Master, которые всегда идут к контроллерам в корневом каталоге?

ответ

2

Использование Url.Content помощник:

<area href="<%= Url.Content("~/ProShop") %>" shape="rect" coords="168,8,235,24"> 

или Url.RouteUrl:

<area href="<%= Url.RouteUrl(new { controller = "ProShop" }) %>" shape="rect" coords="168,8,235,24"> 
+0

Url.Content не может быть найден? какое пространство имен это? – leora

+0

это не работает с главной страницы – leora

+1

Я понял проблему. , Я не использовал мастер-страницы MVC – leora