Merhaba MVC Severler,
Önceki yazımda Html Helper’larından ActionLink, RouteLink, Action, RenderAction, Partial ve RenderPartial nasıl kullanılır nelerdir bunları inceledik. Bu yazımda da URL Helper’lardan Url.Action, Url.Content ve Url.RouteUrl’in ne işe yaradığını ve ne olduğunu inceledim.
URL Helper’ları HTML ActionLink ve RouteLink’e benzemektedir fakat geriye HTML döndürmek yerine, URL’leri build edip URL’leri string gibi döndürürler. 3 tane URL Helper vardır:
- Action
- Content
- RouteUrl
Action
Action Helper‘i, HTML Helper‘larından olan ActionLink’e birebir aynısıdır, fakat Action Helper geriye anchor tag döndürmez. Örneğin, aşağıdaki kod Blog controller’ı içerisindeki post isimli action’i içerisinde postID’si 5 olan yaziyi getirecek URL(link değil) gösterilecektir:
Kullanımı:
@Url.Action("Post", "Blog", new { postID = 5 }, null)
Html Çıktısı:
/Blog/Post?postID=5
RouteUrl
RouteUrl’da, Action helper ile aynı pattern’e sahiptir. Ama Html Helper’larından RouteleLink gibi route adını kabul eder ve fakat controller ve action name’i parametre olarak almaz.
Kullanımı:
@Url.RouteUrl(new {postID=5})
Html Çıktısı:
/Blog/Post/5
Content
Content Helper, relative olan uygulama yolunu, absolute uygulma yoluna çevirir.
Kullanımı:
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
Html Çıktısı:
<link href="/Content/Site.css" rel="stylesheet" type="text/css" />
MVC ile kalın,
Bir sonraki yazımda Layout nedir? Nasıl kullanılır? Bunları tartışacağız.


