问题标签 [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 回答
511 浏览

asp.net-mvc - asp.net mvc 2 DataAnnotations 验证

我刚刚尝试了新版本的框架(asp.net mvc 2 preview 2),其中包括集成了 jQuery 的服务器和客户端验证,看起来不错。

它在我的模型(实体)中具有属性的属性,例如 DataType。我在哪里展开以查看我有哪些选项,所以它有你想要你不想要的所有东西,比如DurationPhoneNumber :)

但我没有像Number这样的简单数据类型!

regEx 不是一个好主意,因为我想使用jQuery验证器的内置选项来获取数字

0 投票
2 回答
390 浏览

asp.net - 通过异步更新 ValidationSummary - ASP.NET MVC

在我的控制器中,如果模型状态无效

我想更新 ValidationMessage 但不必重新发布视图。似乎是带有验证消息的理想概念。我也在使用 DataAnnotations ,<% Html.EnableClientValidation(); %>但它仍然发布到控制器,我必须执行此检查。有什么建议的实现吗?

0 投票
4 回答
10059 浏览

c# - 编写 CompareTo DataAnnotation 属性

我有一种情况,我想与字段进行比较(例如,确保开始时间在结束时间之前)。我正在使用这些System.ComponentModel.DataAnnotations属性进行验证。

我的第一个想法是这样的:

但是,这不起作用,标记属性的位置存在编译器错误:

有人对此有解决方案吗?或者与另一个字段的值相比,验证一个字段的不同方法?

0 投票
3 回答
2602 浏览

asp.net - ASP.NET MVC - 用于客户端验证的 DataAnnotations

如果使用数据注释的 ASP.NET MVC 应用程序...

我们发布到服务器。我们是否仍要执行该操作,检查 ModelState.IsValid 并返回带有验证错误的原始视图。如果我们访问服务器(通过帖子),它是否仍被视为客户端验证?

0 投票
1 回答
317 浏览

asp.net-mvc - DataAnnotations 是否仅适用于 EntityFramework/Linq2Sql 类?

我正在使用 ASP .NET MVC 框架的 Preview 2。

我用我自己的 NHibernate 模型尝试了 DataAnnotation 属性,但它们似乎不起作用。

我的印象是验证应该在发布期间由模型绑定触发。但即使你的模型与我提供的错误数据完美绑定,ModelState.IsValid 仍然返回 true。

DataAnnotations 是否仅适用于 EntityFramework/Linq2Sql 生成的类,或者我只是做错了什么(可能是这种情况)?

提前致谢。

0 投票
1 回答
751 浏览

asp.net-mvc - 基于 ASP.NET MVC 2 DataAnnotation 的验证与 LINQ2SQL 冲突

ASP.NET MVC 2,提供了一个很好的基于注释的验证功能,但是要使用这个功能,我需要引用两个文件(Microsoft.Web.Mvc.ModelBinders.dll 和 System.ComponentModel.DataAnnotations.dll ),如此所述

我使用 LINQ2SQL 来创建我的实体。它在实体类中使用它自己的注释,这需要另一个版本的System.ComponentModel.DataAnnotations.dll

所以目前我可以使用其中之一(验证或 linq2sql) 有人遇到同样的问题吗?或者有谁知道如何解决这个问题?

0 投票
1 回答
1577 浏览

c# - .NET:一般的 DataAnnotation 属性

ASP.NET MVC 2 将支持基于DataAnnotation属性的验证,如下所示:

如何仅使用纯 .NET(不使用 MVC 绑定、控制器方法等)检查当前模型状态是否有效?

理想情况下,这将是一种方法:

0 投票
1 回答
3444 浏览

asp.net-mvc - ASP.NET MVC ModelMetaData:有没有办法根据RequiredAttribute设置IsRequired?

Brad Wilson 就 ASP.NET MVC 的新 ModelMetaData 发表了一篇很棒的博客系列:http: //bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-2-modelmetadata.html

在其中,他描述了 ModelMetaData 类现在如何在视图和模板化助手中公开。如果字段是必需的,我想做的是在表单字段标签旁边显示一个星号,所以我考虑使用 ModelMetaData 的 IsRequired 属性。但是,默认情况下 IsRequired 对于所有不可为空的属性为 true,而对于所有可空属性为 false。问题是,字符串始终可以为空,因此字符串的 IsRequired 属性始终为 false。有谁知道如何覆盖 IsRequired 的默认设置?或者,我考虑过利用我用来装饰我的属性的RequiredAttribute 属性,但RequiredAttribute 似乎没有通过ModelMetaData 类公开。有谁知道如何解决这个问题?

提前致谢。

0 投票
4 回答
5188 浏览

asp.net-mvc - 根据外部因素验证对象(即数据存储唯一性)

描述

我的解决方案有这些项目:

  • DAL = 修改后的实体框架
  • DTO = 能够自我验证的数据传输对象
  • BL = 业务层服务
  • WEB = 演示 Asp.net MVC 应用程序

DAL、BL 和 WEB 都参考了 DTO,这很棒。
该过程通常以这种方式执行:

  1. 向 WEB 发出 Web 请求
  2. WEB 发布 DTO
    • DTO 通过自定义 ActionFilter 自动验证
    • 自动收集验证错误
  3. (验证OK)WEB调用BL提供DTO
  4. BL 使用 DTO 调用 DAL(可以通过它们或仅使用它们)

DTO验证问题然后......

我的 DTO 能够根据自己的状态(属性值)验证自己。但是现在,当情况并非如此时,我遇到了一个问题。我需要他们使用 BL(以及因此 DAL)进行验证。

我的真实示例:用户注册并且 WEB 获得了一个经过验证的用户 DTO。有问题的部分是username验证。应根据数据存储检查其唯一性。
我该怎么做?

还有其他信息表明,所有 DTO 都为 IoC 目的和 TDD实现了一个接口(即UserDTO 实现)。IUser两者都是DTO 项目的一部分。

不可能的尝试

  1. 我不能在 DTO 中引用 BL,因为我会得到循环引用。
    Compilation error
  2. 我无法创建一个额外的 DTO.Val 项目来引用部分 DTO 类并在那里实现它们的验证(他们会引用 BL + DTO)。
    Partial classes can't span assemblies.

可能的尝试

  1. 创建一个特殊ActionFilter的,可以根据外部条件验证对象。这将在WEB 项目中创建,因此可以看到将在此处使用的 DTO 和 BL。
  2. 将 DTO 放在 BL 中,并将 DTO 接口保留为其他项目引用的实际 DTO,并重构所有代码以使用接口而不是具体类。
  3. 不要处理外部依赖验证,让外部依赖抛出异常——这可能是这个问题最糟糕的解决方案

你有什么建议?

0 投票
1 回答
550 浏览

asp.net - 如何在业务层(ASP.NET)中调用 DataAnnotations?

我想在我的传输对象上使用 DataAnnotations。但是如何在业务层调用它们来验证输入?

这是通过某种方法调用还是反射?

我不使用 ASP.NET,而是使用标准的 ASP.NET,并且想在业务层调用数据注释。