问题标签 [data-annotations]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2842 浏览

asp.net-mvc - 用于检查 linq to sql 数据上下文中唯一性的通用验证属性

我已经为asp.net 编程了,哦,现在已经有几天了。这是一个我什至无法自己弄清楚的问题。

我希望从代码中我想要完成什么是显而易见的,我有,但它并不漂亮。此外,我想在任何表、任何字段上使用它,即根据我指定的表和字段检查值的唯一性,并将其全部传递给属性构造函数。

0 投票
2 回答
259 浏览

asp.net-mvc - 用于检查相等性的 DataAnnotation 属性

DataAnnotations:范围,必填……知道了。

但只是检查 value==5 或 value==bool?

0 投票
1 回答
3569 浏览

asp.net-mvc - 使用数据注释进行自定义验证

我在让我的自定义数据注释正常工作时遇到问题,我正在尝试添加一个验证属性来验证客户的用户组名称 (CustomerID) 是否唯一。

如果“计数 > 0”,IsValid 应该返回 false。

我该如何解决这个问题,使其正常工作。GetUsergroups() 返回 IQueryable。

编辑:

如何将当前的 CustomerID 作为参数传递?

/米

0 投票
3 回答
8334 浏览

asp.net-mvc - ASP.NET MVC:DataAnnotations - 显示指示字段必须是数字的错误消息

DataAnnotations 的工作方式似乎存在一些漏洞,因为用户将一些文本输入到将进入 int 的字段中将永远无法到达 DataAnnotations 代码。它启动模型绑定错误并向用户显示错误“值'a'对于 XXXX 字段无效。”

无论如何,它自动处理这种情况非常好,但我实际上想显示一条指示问题的错误消息,例如。“值 'a' 不是数字。请在 XXXX 字段中输入数字值”。

我已经尝试了如何替换 Asp.net MVC 2 中的默认 ModelState 错误消息中的解决方案?ASP.NET MVC - 值类型的自定义验证消息,但我无法让它们工作。

看来我的资源文件根本没有被读取,因为在这里(http://msdn.microsoft.com/en-us/library/system.web.mvc.defaultmodelbinder.resourceclasskey.aspx)它声明“如果属性设置为无效的类键(例如不存在的资源文件),MVC 抛出异常。” 即使我将行更改为 DefaultModelBinder.ResourceClassKey = "asdfasdhfk" 也不例外。

有人有想法么?

编辑:这是一些代码。减去我的 Messages.resx 文件的消息没有被使用,所有这些都在工作。Messages.resx 的代码是自动生成的,所以我不会包含它。

因此,在 ProcessOrder 中输入“a”会生成一条通用消息,而不是我在 Messages.resx 中为 PropertyValueInvalid 输入的信息(以及 InvalidPropertyValue 为良好的衡量标准)。

Application_Start 方法

实体类

控制器动作:

0 投票
2 回答
32364 浏览

c# - 使用 Validator 类验证 DataAnnotations

我正在尝试使用Validator 类验证用数据注释装饰的类。

当属性应用于同一个类时,它工作正常。但是当我尝试使用元数据类时它不起作用。我应该对 Validator 做些什么,以便它使用元数据类?这是一些代码..

这有效:

这不起作用:

这就是我验证实例的方式:

谢谢。

0 投票
1 回答
11196 浏览

c# - 如何在 asp.net mvc 中使用 DataAnnotations 验证字符串长度?

我在 ASP.NET MVC 1 应用程序中使用 DataAnnotations 使用Required 和 Range 属性检查必填字段和数值范围。

我正在寻找在几个输入文本框中验证字符串长度的最佳方法。我看到有一个 RegularExpression 属性可以完成这项工作,但我想知道是否有更具体的属性可以做到这一点?

此外,如果有人可以向我指出有关使用 DataAnnotations 的体面资源,我将不胜感激。

0 投票
1 回答
107 浏览

asp.net - 我在哪里可以找到数据注释可以做的所有“事情”(验证)

他们在哪里列出属性(您可以使用数据注释验证框架执行的操作)。

比如,[必填] ....

0 投票
1 回答
1770 浏览

asp.net-mvc - 回发后asp.net mvc多选记住状态

我在我的 asp.net mvc 应用程序上使用 DataAnnotations 进行错误检查,我也在使用强类型 ViewModels。

我的错误检查工作正常,如果字段为空白,则会将错误消息发回我的视图。但是,我的表单上有一个 MultiSelect / Listbox,我需要记住它在出错后的状态。

目前我的 ViewModel 看起来像这样(我只包含了相关属性):

这是我在控制器中的操作:

我的 MultiSelect 采用 FavouriteGenreViewModel 的列表来选择 GenresList 中的选项,它在 GET 操作中使用 AutoMapper 执行此操作,但显然我不能在帖子上使用 AutoMapper,因为它会忘记我发布的值。

我曾考虑过使用逗号分隔的 ID 字符串而不是 FavouriteGenreViewModel 的列表,这样我可以在回发后重新使用该值......但是我希望有人有更优雅的方式来处理这个问题。

谢谢!

保罗

0 投票
1 回答
885 浏览

linq-to-sql - MVC 2 EditorForModel() 渲染外键表名

我有一个有趣的问题,想看看有没有其他人看过这个。我使用 Visual Studio 2010 beta 2 创建了一个 MVC 2 站点。我正在使用 linq to sql 数据模型对象和数据注释。

在我的数据模型对象中,当我使用 EditorForModel 方法时,我使用 [ScaffoldColumn(false)] 属性将外键 ID 从呈现到 UI 中排除。出于某种原因,UI 正在呈现外键表名称。

例如,如果外键是 AccountID,我会看到“帐户”。

我想知道这是否是 editorformodel 中的错误,或者我是否需要使用不同/附加的数据注释属性来指示 editorformodel 不渲染任何内容。

0 投票
2 回答
1455 浏览

asp.net-mvc - 列表框中的空值,不在 ASP.NET-MVC 的模型绑定中计算

如果您没有选择至少一个,则模型验证不会评估链接到列表框值的属性。这种方式不可能使用 DataAnnotations 进行模型评估以告知所需的值。

控制器:

风景:

该模型:

任何帮助将不胜感激。谢谢你。