我使用了几个不同的页面,信息完全相同。所以我把它放在一个布局页面中,所以我没有双重代码。
我在de layout中有一个选项可以更改语言。当您更改语言时,请求将与语言一起发送到控制器方法:" en-US"和当前页面名称"索引"。
此方法将执行RedirectResult(page)
,以便应用语言更改。
我当时正在使用它来获取当前文件的名称(页面名称):
@{ string pageName = Path.GetFileNameWithoutExtension(Server.MapPath(VirtualPath)); }
首先这个代码站在de index.cshtml文件中,然后pageName
将是"索引"。
现在pageName
是" _layout"。这给了我一个错误,因为这个方法显然不存在。
问题:如何从_layout文件中获取当前页面的名称?
答案 0 :(得分:0)
经过越来越长的搜索,然后在这个问题之前我找到了一些东西:
string pageName = Path.GetFileNameWithoutExtension(Request.CurrentExecutionFilePath);
有关此内容的更多信息:
https://forums.asp.net/t/318949.aspx?How+to+get+current+page+file+name+