I have an html extension method to retrieve the url for a file that is in the same folder as the view.
Example
/Views/Home/Index.cshtml /Views/Home/Index.js /Views/Home/Index.css
Is this the best way to do this? I donβt like it because I have to do the next cast. I am sure that RazorView will not work if you use a different viewing mechanism, but IView only has a Render method.
((RazorView)helper.ViewContext.View).ViewPath
Here is the complete method
public static string GetUrl(this System.Web.Mvc.HtmlHelper helper, string fileName) { string virtualPath = ((RazorView) helper.ViewContext.View).ViewPath; virtualPath = virtualPath.Substring(0, virtualPath.LastIndexOf("/") + 1); return virtualPath + fileName; }
Leslie hanks
source share