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

  • gamingbits

    gamingbits

    2 Mayıs 2006
  • The Fashion Sight

    The Fashion

    22 AĞUSTOS 2011
  • Troy Hunt

    Troy Hunt

    29 EYLÜL 2011