He estado trabajando en un proyecto de MVC, y he visto utilizar estos dos. Me preguntaba ¿cuál es la diferencia entre ellos? ¿Es incorrecto usar uno sobre el otro? Tengo entendido que debería usar Url.Content(), pero VirtualPathUtility.ToAbsolute() parece estar funcionando también.VirtualPathUtility.ToAbsolute() VS. Url.Content()
Respuesta
Url.Content()
es un método de utilidad que forma parte de MVC. Estar allí para uniformizar y centralizar las clases de utilidad, supongo.
VirtualPathUtility.ToAbsolute()
es un método .NET Framework. Tal vez el MVC lo está utilizando, tendríamos que comprobar la fuente ...
Esperamos que la ayuda
Si usted está haciendo esta conversión dentro de un controlador, entonces me favorecen VirtualParthUtility.ToAbsolute() a lo largo Url.Content().
El beneficio viene cuando desea probar las acciones del controlador. Sin embargo, en lugar de llamarlo directamente, definiría una interfaz IPathUtilities, por ejemplo, con una implementación usando métodos VirtualPathUtility para el sitio en vivo, y otra usando algún tipo de simulacro al realizar la prueba.
Si llamas a VirtualPathUtility directamente, entonces no podrás probar el método de acción (podrías haber pensado que una burla inteligente de HttpContext lo sostendría, pero habiendo intentado esto yo mismo no pude encontrar una manera de hazlo).
- 1. Control.ResolveUrl versus Control.ResolveClientUrl versus VirtualPathUtility.ToAbsolute
- 2. por qué el uso @ Url.Content
- 3. Unidad de prueba Código que llama a VirtualPathUtility.ToAbsolute
- 4. Url.Content en ASP.NET formularios web
- 5. Url.Content en ASP.net MVC 2.0
- 6. ResolveUrl/Url.Content en ASP clásico
- 7. url.content (...) como método en jquery o javascript?
- 8. ¿Por qué usar Url.Content para referenciar recursos?
- 9. asp.net MVC Url.Content() redirección de CDN
- 10. Uso de Url.Content con URL semi-relativa
- 11. ¿Cómo incluir una variable MVC Razor dentro de Url.Content?
- 12. ASP.NET MVC RC vuelve camino equivocado para Url.Content
- 13. ¿Debo usar Url.Content() o ResolveUrl() en mis vistas de MVC?
- 14. ¿Cuál es la diferencia entre Href y Url.Content?
- 15. MVC @ Url.Contenido vs @ Url.Acción
- 16. Problema con Url.Content en ASP.NET MVC en la ruta por defecto
- 17. En ASP.NET MVC, ¿cómo puedo usar el ayudante Razor @ Url.Content() del código C#?
- 18. @ Url.Content en el archivo JavaScript independiente mediante ASPNET MVC 3 y Razor
- 19. J2ME VS Android VS iPhone VS Symbian VS Windows CE
- 20. TagSoup vs Jsoup vs HTML Analizador vs vs HotSax
- 21. 'método' vs. 'mensaje' vs. 'función' vs. '???'
- 22. ACE vs Boost vs Poco vs wxWidgets
- 23. VS 2008 vs VS 2008 Express
- 24. Atomikos vs JOTM vs Bitronix vs?
- 25. Acumular vs fold vs reducir vs compress
- 26. .NET vs ASP.NET vs CLR vs ASP
- 27. control.BeginInvoke() Vs Dispatcher Vs SynchronizationContext Vs .. - FIABILIDAD
- 28. método vs función vs procedimiento vs clase?
- 29. Rhino simulacro vs Typemock vs JustMock vs
- 30. inline vs __inline vs __inline__ vs __forceinline?
Url.Content() eventualmente llama VirtualPathUtility pero hace bastante más. Editaría tu respuesta, pero necesitaría publicar cubos llenos de código. ;) – jfar
Gracias por aclaraciones jfar! –