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

  • graham025

    graham025

    25 NİSAN 2006
  • Ralph Phillips

    Ralph Philli

    5 Aralık 2006
  • Samantha Crain

    Samantha Cra

    30 EKİM 2008