在ASP.NET MVC中检索当前视图名称?
发布时间:2020-05-27 17:27:49 所属栏目:asp.Net 来源:互联网
导读:我有一个局部视图(控制),用于几个视图页面,我需要传递当前视图的名称回到控制器 – 所以如果有例如。验证错误,我可以重新绘制原来的视图。 一种解决方法是(在控制器方法中) var viewName = Details; // or whateverViewData[viewName] = viewName;return(V
|
我有一个局部视图(控制),用于几个视图页面,我需要传递当前视图的名称回到控制器 – 所以如果有例如。验证错误,我可以重新绘制原来的视图。 一种解决方法是(在控制器方法中) var viewName = "Details"; // or whatever ViewData["viewName"] = viewName; return(View(viewName,customer)); 然后在部分本身,渲染它 <input type="hidden" name="viewName"
value="<%=Html.Encode(ViewData["viewName"])%>" />
问题是 – 是否有一些属性或语法我可以使用直接检索这个而不是设置它从控制器?我试过明显: <input type="hidden" name="viewName"
value="<%=Html.Encode(this.Name)%>" />
但这不工作。我在这里失踪了什么? 谢谢。 解决方法如果你不介意你的代码绑定到你使用的特定视图引擎,你可以看看ViewContext.View属性,并将其转换为WebFormViewvar viewPath = ((WebFormView)ViewContext.View).ViewPath; 我相信会得到你的视图名称在结束。 编辑:破解是绝对地点;为了使事情有点整洁我已经包装了逻辑上一个扩展方法,如: public static class IViewExtensions {
public static string GetWebFormViewName(this IView view) {
if (view is WebFormView) {
string viewUrl = ((WebFormView)view).ViewPath;
string viewFileName = viewUrl.Substring(viewUrl.LastIndexOf('/'));
string viewFileNameWithoutExtension = Path.GetFileNameWithoutExtension(viewFileName);
return (viewFileNameWithoutExtension);
} else {
throw (new InvalidOperationException("This view is not a WebFormView"));
}
}
}
这似乎做我完全正确的。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – DataAnnotations和资源不能很好地发挥作用
- Asp.net配合easyui实现返回json数据实例
- asp.net – 处理缓存和浏览器后退按钮的最佳方法是什么?
- 使用ActiveDirectory授权与ASP.NET身份
- asp.net – Reference.svcmap:无法加载文件或程序集Micros
- asp.net – 可以在Visual Studio 2010中将任务列表项添加到
- asp.net – 无法获取管道:loadVisitor(domain:)
- asp.net – 如何将下拉列表添加为gridview项
- entity-framework – 管理dbContext的生命周期
- asp.net-mvc – ASP.Net MVC路由到用户名
推荐文章
站长推荐
- 与asp.net mvc的dotnetopenauth证明太沮丧使用
- asp.net-mvc – 如何从ActionResult获取模型?
- asp.net-mvc – 重用MVC arhitecture;有两层UI:
- 使用MVC和ASP.NET身份认证网址
- asp.net-mvc – 添加分页MVC和Azure表存储
- asp.net-core – 为什么要在src文件夹中组织项目
- asp.net – 从aspx页面中的Static方法访问ViewSt
- asp.net-mvc-3 – ASP.NET MVC3 – DateTime格式
- ADO.NET数据表与数据读取器
- 阻止拦截ASP.NET Web API响应的FormsAuthenticat
热点阅读
