SORU
18 EYLÜL 2009, Cuma


HTML Yardımcısı URL oluşturmak

Normalde ASP.NET bir görünümde bir URL (<a>) elde etmek için aşağıdaki fonksiyonu kullanabilirsiniz:

Url.Action("Action", "Controller");

Ancak, veremem özel bir HTML yardımcı bunu yapmak için nasıl bulmak. Var

public class MyCustomHelper
{
   public static string ExtensionMethod(this HtmlHelper helper)
   {
   }
}

Yardımcı değişken Eylem ve GenerateLink yöntemleri vardır, ama 7**’ler. üretirler ASP.NET MVC kaynak kodu biraz araştırdım, ama basit bir yol bulamadım.

Asıl sorun yukarıdaki Url üye görünümü sınıfı ve onun için örnekleme gereken bazı bağlamlarda ve yol haritaları (hangi ben olmak istemiyorum ile ilgili ve benim bir suçum yok zaten). Alternatif olarak, örnek HtmlHelper sınıfı var, ayrıca bazı bağlam sanırım ya da hafif bir akşam yemeği alt çerçevesinde bilgi Url örneği (ama tekrar etmek istemem ele alan).

Özet olarak, mümkün olduğunu düşünüyorum ama tek görebildiğim yolu, daha fazla veya daha az bazı iç ASP.NET malzeme ile bazı manipülasyon bu yana, daha iyi bir yolu olup olmadığını merak ediyorum.

Düzenleme:Örneğin, görüyorum bir olasılık olacaktır:

public class MyCustomHelper
{
    public static string ExtensionMethod(this HtmlHelper helper)
    {
        UrlHelper urlHelper = new UrlHelper(helper.ViewContext.RequestContext);
        urlHelper.Action("Action", "Controller");
    }
}

Ama doğru görünmüyor. UrlHelper örneklerini benimle muhatap olmak istemiyorum. Daha kolay bir yolu olmalı.

CEVAP
18 EYLÜL 2009, Cuma


Bunun içinde html Yardımcısı uzatma yöntemi gibi url Yardımcısı oluşturabilirsiniz:

var urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext);
var url = urlHelper.Action("Home", "Index")

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Chip Johnson

    Chip Johnson

    30 AĞUSTOS 2007
  • El SalvaLobo

    El SalvaLobo

    10 Temmuz 2006
  • The White House

    The White Ho

    21 Ocak 2006

İLGİLİ SORU / CEVAPLAR