Próbuję napisać rozszerzenie helper HTML, które wyprowadza tag obrazu. Potrzebuję uzyskać dostęp (w ramach kodu C#) coś podobnego pomocnika Razor @ @ Url.Content(), aby uzyskać poprawny adres URL dla bieżącego kontekstu. Jak to zrobić?W ASP.NET MVC, w jaki sposób mogę użyć pomocnika Razor @ Url.Content() z kodu C#?
Odpowiedz
Można dostać się do obiektu Request a tym samym adresem URL tak:
string fullUrl = HttpContext.Current.Request.Url.AbsoluteUri;
Dlaczego odpowiedź Tima Scotta została wzięta w górę? –
coś takiego może być?
public static string MyHelper(this HtmlHelper h)
{
string url = h.ViewContext.HttpContext.Request.Url.AbsoluteUri;
}
Można utworzyć własną instancję UrlHelper
przekazując w odpowiednim ViewContext
. Na przykład, aby zrobić to od pomocnika obrazu:
public static string CustomImage(this HtmlHelper html)
{
var Url = new UrlHelper(html.ViewContext.RequestContext);
}
W tym momencie można nazwać Url.Content()
lub jakąkolwiek inną metodę UrlHelper
.
Użyj następujących poleceń, aby naśladować Url.Content w kodzie.
VirtualPathUtility.ToAbsolute("~/url/");
To działało dla mnie na stronie internetowej WebMatrix. Dzięki. – Amir
To jest fajne, czy istnieje jakiś scenariusz/edgecase, gdzie Url.Content() zapewnia inny wynik niż ten? – Zasz
Jeśli adres URL zawiera parametry ciągu zapytania, funkcja VirtualPathUtility.ToAbsolute() spowoduje zgłoszenie błędu, Url.Content nie. –
tak, użyj tego kodu, aby dodać url.content w kodzie to praca, bro i sist
[Próbka] var img_btn_edit = VirtualPathUtility.ToAbsolute ("~/Content/images/ołówek .png ");
Tak, można.
od kontrolera można nazwać:
this.Url.Content("~/Somerelativepath?somethingelse=true");
- 1. Jak dołączyć zmienną Razor MVC w Url.Content?
- 2. ASP.NET MVC C# Razor Minification
- 3. Korzystanie Url.Content w ASP.NET MVC 2.0
- 4. ASP.NET MVC Razor Łączenie
- 5. Dlaczego używamy pomocnika HTML w ASP.NET MVC?
- 6. Jak zakodować '/' w ASP.NET MVC Razor
- 7. ASP.NET MVC RC zwraca niewłaściwą ścieżkę Url.Content
- 8. Widoki ASP.NET MVC - Czy mogę użyć kodu źródłowego?
- 9. Url pomocnika do pełnego adresu URL w ASP.NET MVC-3
- 10. W jaki sposób asp.net mvc to rozgryźć?
- 11. Pisanie kodu HTML wewnątrz zmiennej w ASP.NET C# i Razor
- 12. W jaki sposób mogę przetestować metodę OnActionExecuting kontrolera asp.net-mvc?
- 13. Jak utworzyć pomocnika opakowania wokół funkcji pomocnika Url.Content?
- 14. Co znaczy @: w ASP.net MVC Razor?
- 15. Potrzebujesz pomocy w budowaniu Niestandardowego pomocnika HTML dla Asp.net MVC
- 16. Uzyskiwanie dostępu do atrybutów z Custom Html Helpers w asp.net mvc 4 razor
- 17. @ Url.Content w osobnym pliku przy użyciu javascript ASPNET MVC 3 i Razor
- 18. Podczas łączenia się z konstruktorem podstawowym, w jaki sposób mogę ponownie użyć kodu inicjalizacyjnego w przeciążeniu
- 19. Prawidłowy sposób odniesienia JavaScript w ASP.NET MVC?
- 20. Wyświetlanie przesłanego obrazu w MVC 3 Razor
- 21. Asp.Net MVC Razor Bootstrap Formularz Wejście
- 22. Razor Silnik nie pracuje w ASP.NET MVC 5 6
- 23. Jak używać helperów ASP.NET MVC HTML z niestandardowego pomocnika?
- 24. użyciu ASP.NET MVC 3 Razor - użyć wyrażenia warunkowego wraz z wyjściem HTML
- 25. W jaki sposób formksomponent można wyliczyć w ASP.NET MVC?
- 26. Unikanie kodu spaghetti w ASP.NET MVC
- 27. W jaki sposób dostosować ASP.Net Tożsamość
- 28. ASP.NET MVC wyłącz przyciski opcji Razor Składnia
- 29. Ustaw atrybut klasy na Html.EditorFor w ASP.NET MVC Razor View
- 30. Razor ASP.NET MVC, Html.BeginForm, używając instrukcji
Musisz być bardziej szczegółowe niż „z kodu”. To wszystko kod. Masz na myśli działanie kontrolera? – liammclennan
Tak, jest swobodnie dostępny dla kodu kontrolera - zobacz moją odpowiedź poniżej http://stackoverflow.com/questions/351937/in-asp-net-mvc-how-can-use-i-url-content-from-code/7396627 # 7396627 –
Dlaczego nie piszesz [metoda rozszerzenia] (http://msdn.microsoft.com/en-us/library/bb383977.aspx)? – JSC