asp.net-mvc – 从ModelMetaData获取另一个属性的值
发布时间:2020-08-16 06:27:26 所属栏目:asp.Net 来源:互联网
导读:我试图从自定义验证属性的GetClientValidationRules方法中获取另一个属性的值. 这是我的尝试(基于另一个问题的Darin’s response): public IEnumerableModelClientValidationRule GetClientValidationRules( ModelMetadata metadata, ControllerContex
我试图从自定义验证属性的GetClientValidationRules方法中获取另一个属性的值. 这是我的尝试(基于另一个问题的Darin’s response): public IEnumerable<ModelClientValidationRule> GetClientValidationRules( ModelMetadata metadata,ControllerContext context) { var parentType = metadata.ContainerType; var parentMetaData = ModelMetadataProviders.Current .GetMetadataForType(null,parentType); var parentMetaData = ModelMetadataProviders.Current .GetMetadataForProperties(context.Controller.ViewData.Model,parentType); var otherProperty = parentMetaData.FirstOrDefault(p => p.PropertyName == "SomeProperty"); var otherValue = otherProperty.Model; var rule = new ModelClientValidationRule { ValidationType = "customvalidatorattribute",ErrorMessage = this.FormatErrorMessage(metadata.GetDisplayName()),}; yield return rule; } 但是,在尝试设置otherValue时,我得到:
解决方法问题是你没有传入绑定模型.更改以下两行:var parentMetaData = ModelMetadataProviders.Current .GetMetadataForProperties(context.Controller.ViewData.Model,parentType); var otherValue = (string)parentMetaData.FirstOrDefault(p => p.PropertyName == "SomeProperty").Model; 这将获得当前模型的完整元数据(包括绑定值). (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ASP.NET VNext类库System.Runtime.Serialization
- asp.net – Visual Studio 2010图表控件:使Y轴成为整数值,
- LoginView中的ASP.NET LoginStatus不会触发LoggingOut事件
- asp.net – 哪个控件导致回发?
- 在asp.net App_Code目录中使用Nemerle
- asp.net – 检查.NET中两个双精度相等的问题 – 这个方法有
- 密码由6-12位数字或字母组成,密码哈希加密
- asp.net – axd和ashx处理程序之间的区别
- asp.net – 从启用AJAX的WCF服务返回错误详细信息
- asp.net-mvc – 有条件地在webgrid中显示图像 – mvc 3
推荐文章
站长推荐
- asp.net-mvc – 我可以获取html.HiddenFor / Htm
- asp.net – 转发器控件中的单选按钮列表
- 在HiddenField asp.net中存储一个字符串数组
- asp.net-mvc – 在ASP.NET MVC 4中未加载的捆绑包
- asp.net Gridview,1记录跨度两行
- asp.net-mvc-3 – 为MVC3应用程序配置Ninject的正
- asp.net – 允许服务器/ usercontrol上的任何属性
- asp.net – 如何从日历控件中获取所选日期?
- 设置ASP.NET页面不被缓存(客户端/服务器端取消缓
- asp.net-web-api – Web API / MVC 6中的安全JSO
热点阅读