asp.net-mvc – 从ModelMetaData获取另一个属性的值
发布时间:2020-12-15 20:59:40 所属栏目:asp.Net 来源:网络整理
导读:我试图从自定义验证属性的GetClientValidationRules方法中获取另一个属性的值. 这是我的尝试(基于另一个问题的Darin’s response): public IEnumerableModelClientValidationRule GetClientValidationRules( ModelMetadata metadata,ControllerContext cont
我试图从自定义验证属性的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 – 评论未使用的代码会不会给我的页面带来任何方式
- asp.net-mvc-3 – MVC 3模型属性未在html.action调用的部分
- asp.net-mvc – 如何在ASP.NET MVC控制器中访问HttpServerU
- asp.net – 基类包含字段“ScriptManager1”,但其类型(Syst
- 发布ASP.NET核心应用程序:命令“npm install”退出,代码为
- asp.net核心 – 我需要哪个包在asp.net 5中的图像?
- asp.net-mvc – Web Api调用返回404错误,GUID作为参数传递
- 什么是ASP.NET的最佳/推荐的CAPTCHA组件
- ASP.NET自定义控件:何时调用LoadPostData()?
- asp.net-mvc-3 – insert命令需要插入数据绑定设置Kendo Gr
推荐文章
站长推荐
- asp.net-mvc – 如何在ASP.NET MVC控制器中访问H
- asp.net – CustomErrors vs HttpErrors – 一个
- ASP.NET Core知多少(6):VS Code联调Angular +
- asp.net-mvc-3 – CopyAllFilesToSingleFolderFo
- asp.net – 动态UpdatePanels和UserControls问题
- asp.net-mvc – 动态加载的程序集中的强类型Razo
- .NET Core的日志[3]:将日志写入Debug窗口
- asp.net-mvc – ASP.Net MVC数据库驱动的菜单,带
- asp.net – 通过Button控制Fire AsyncFileUpload
- asp.net-mvc – 在Azure Active Directory B2C中
热点阅读