asp.net-mvc – 仅将值从EditorTemplate传递到其布局模板,在mvc
发布时间:2020-12-16 09:42:10 所属栏目:asp.Net 来源:网络整理
导读:有没有办法将值从EditorTemplate传递到它的布局(不是网站_Layout,而是模板布局) 在MVC 5我有这样的事情: EditorTemplates / MyStr.cshtml @{ Layout = "_FieldLayout.cshtml"; ViewData.ModelMetadata.AdditionalValues.Add("__idpostfix","-cde");}@Html.C
有没有办法将值从EditorTemplate传递到它的布局(不是网站_Layout,而是模板布局)
在MVC 5我有这样的事情: @{ Layout = "_FieldLayout.cshtml"; ViewData.ModelMetadata.AdditionalValues.Add("__idpostfix","-cde"); } @Html.CustomHelper("") CustomHelper使用2个输入标签,一个用于显示/编辑,另一个用于保持值,两个都有id,显示一个有-cde后缀 @{ var postfix = ViewData.ModelMetadata.AdditionalValues.ContainsKey("__idpostfix") ? ViewData.ModelMetadata.AdditionalValues["__idpostfix"] : string.Empty; } @Html.Label("",new {@for = ViewData.TemplateInfo.GetFullHtmlFieldId(string.Empty) + postfix}) ... 现在在mvc 6中AdditionalValues是一个ReadOnly字典,所以有另一种方法可以做到这一点,我最好的选择是在我需要后缀时使用不同的FieldLayout 解决方法
您可以使用ViewData将数据从子视图传递到其布局页面(这不是特定于编辑器模板).
在EditorTemplates / MyStr.cshtml中,您可以设置ViewData [“somedata”] =“some value”;然后在_FieldLayout.cshtml中,您可以轻松地使用它. 布局的“子”页面首先运行,因此任何具有副作用的代码(例如设置ViewData)都将对布局页面可见. 另请注意,给定页面的ViewData不会泄漏“备份”,因此在使用后无需重置. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 你如何’规范’一个Web服务器来支持给定的应用程
- ASP.NET多线程如何?
- 如何将当前的asp.net usercontrols类名转换为c#上的字符串?
- ASP.NET验证摘要:如何使用JavaScript禁用验证程序?
- asp.net-mvc – ASP.NET MVC动态生成的图像URL
- asp.net-mvc – ASP.NET MVC ActionFilter参数绑定
- asp.net-mvc – 为新的网上商店项目选择什么(在ASP.NET MVC
- ASP.Net Core Web Api中的异步视频流不起作用
- asp.net – .Net平台有Django还是Rails?
- asp.net-mvc-3 – ASP.NET MVC 3 MSChart错误:此数据系列只
推荐文章
站长推荐
- asp.net-mvc – 如果另一个属性在MVC 3 / jQuery
- asp.net – 使用匈牙利表示法在VB.NET中验证命名
- asp.net – 屏幕读者测试网站的可访问性
- asp.net-mvc-3 – ASP.NET MVC3:WebGrid Ajax过
- 如何调查ASP.net应用程序上的SQL Server超时错误
- 如果没有授权,如何将用户重定向到ASP.NET页面?
- asp.net-mvc – 如何在ASP.NET MVC 3 WebGrid列名
- asp.net – 在gridview中显示2位小数位数
- asp.net-mvc-3 – 防止篡改ASP.NET MVC EF中的表
- asp.net-mvc – 获取在Identity 2中具有指定角色
热点阅读