对于我们的Web应用程序,我需要根据视图保存获取和显示的项目的顺序 - 或者确切地说 - 生成视图的控制器和操作(当然还有用户ID,但这不是重点).
我不是在每个控制器动作中自己给出一个标识符(为了将它用于某些视图相关的DB输出排序),我认为从控制器和动作方法自动创建这个标识符会更安全,更容易.来自.
如何从控制器中的action方法中获取控制器和操作的名称?或者我需要反思吗?我想这很简单,提前谢谢!
在ASP.Net MVC的视图中是否有一种方法来获取使用该视图的控制器和actien方法的名称?
我需要views\something在MVC 4.0中检索文件夹内的单个视图的名称(来自请求)并且我不确定如何最好地执行它.
我的代码有效,但它有一种'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();
}
Run Code Online (Sandbox Code Playgroud)
是否有更优雅的方式来实现这一目标?