我需要在MVC 4.0中检索views\something
文件夹(来自请求)中的单个 View 的名称,但不确定如何做到这一点。
我的代码可以工作,但是它有一种“hacky”的感觉,我希望可以简化一些人。
我的代码如下:
private FileInfo GetNameOfViewToServe()
{
var LeftPartOfUri = Request.Url.GetLeftPart(UriPartial.Authority);
var folder = Request.Url.AbsoluteUri.Replace(LeftPartOfFolderUri,string.Empty);
var directory = new DirectoryInfo(Server.MapPath(@"~\Views\" + folder));
return directory.GetFiles().First();
}
有没有更优雅的方式来实现这一目标?
最佳答案
从问题ASP.NET-MVC . How to get the controller name from an url?或Get ControllerName and ActionName and populate the ViewData in Master Page?尝试此解决方案
var controller = (string)RouteData.Values["controller"];