- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在从书中学习 ASP.NET MVC Pro ASP.NET MVC 4 (顺便说一下,到目前为止我喜欢它)。
我还在开始章节,它向我展示了 System.ComponentModel.DataAnnotations
命名空间属性,如何用这些注释散布我的模型类,然后如何使用它们来检查模型是否有效(ModelState.IsValid
中的 Controller
)。
例如:
public class GuestResponse
{
[Required(ErrorMessage = "Please enter your name"]
public string Name { get; set; }
}
...
public ViewResult RsvpForm(GuestResponse guestResponse)
{
if(ModelState.IsValid)
{
return View("Thanks", guestResponse);
}
}
ErrorMessage
验证属性的参数有点View
有关的?类似的东西不属于 UI
层?例如...如果由于空间限制,我希望移动版本不是说“请输入您的姓名”而是说“需要姓名”怎么办?但它在我的模型中! ModelState.IsValid
确定模型的状态?模型不应该告诉我吗?我明白 ModelState
正在使用 DataAnnotations
我的模型中的属性,但这似乎只适用于非常简单的模型。更复杂的模型甚至可能没有有效/无效状态,它可能只有不同的阶段和状态。我在这里有点漫不经心,但我不喜欢声明性地说明是什么使我的模型有效或无效的想法。 最佳答案
以下是我对您问题的回答:
1) Why do I want a bunch of attributes littered throughout my domain model? I like my domain model pure and free from any stuff that is implementation specific, and any real world model would be too complex to just use declarative validation like this.
AutoMapper
.基本的经验法则是 View 不应该知道您的域模型。
2) Aren't the ErrorMessage parameters of the validation attributes somewhat View related? Doesn't something like that belong in the UI layer? For example...what if due to space constraints I want the mobile version to instead of saying "Please enter your name" say "Name required"? But here it is in my model!
3) Why do I want to use ModelState.IsValid to determine the status of the model? Shouldn't the model tell me? I understand that ModelState is making use of the DataAnnotations attributes that are in my model, but this seems like it would only work for very simple models. A more complex model might not even have a valid/invalid state, it might just have various stages and states. I'm sort of rambling here, but I don't like the idea of declaratively saying what makes my model valid or invalid.
FluentValidation.NET
.它为您提供了一种非常漂亮流畅的语法来表达任意复杂的验证规则,它
integrates easily with ASP.NET MVC
并允许
unit test your validation rules
完全隔离。
关于asp.net-mvc-4 - Asp.NET MVC - DataAnnotations 和 ModelState.IsValid 对域模型的侵入性太强?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20812448/
这个问题是关于理解为什么一种技术比另一种更好。在 Angular 4/5 中,在模板中,您可以通过执行以下操作来实现相同的目的: 1) *ngIf-else 语法 content here
Page.IsValid 和 args.IsValid 是否相互依赖? 我的意思是,如果 args.IsValid="true",Page.IsValid 必须为“true”。 当然反过来说:如果 P
我正在编写一个 Controller 并为其进行单元测试,当时我遇到了两种方法(我认为同样有效)来做某事。我的所有模型都有一个 IsValid 属性,我可以检查该属性以询问模型是否有效。 在回发到 C
如我的问题所述。我真的不明白 date-fns 的 isValid 和 luxon 的 isValid 之间的区别。我有一个日期字符串变量和一个用 new Date() 调用日期字符串的变量。 我的日
这个问题已经有答案了: Getting AbstractMethodError while creating a connection to Oracle9 database with Tomcat
我正在使用自定义 register在 react-hook-form ,我无法获得 formState.isValid成为 true当我在输入中输入文本时(因此满足 required 条件)。 这是一
是否可以查看 knockout-validation plugin 中是否只有一个属性有效? 我在文档中看不到任何对它的引用,只能查看整个模型是否有效。 例如,我希望计算出的 observable 具
在Connection的方法中,我应该给它多少超时时间? :S 我不知道正常的超时是多少,应该花多长时间? :) 我不想要 isValid() 返回 false 如果它可以返回 true 如果它有更多
使用IsValid()验证电子邮件地址或URL格式是否可以防止XSS?指定其他格式时,它会否定XSS吗? 最佳答案 有效的URL仍可以包含攻击媒介: #isValid("url", "http://
我可以使用 isValid(0) 函数来检查连接是否仍然有效(alive)吗? 我遇到以下异常: com.mysql.jdbc.exceptions.jdbc4.CommunicationsExcep
我正在使用 ASP.NET-MVC Core 2.1,我的代码中有这个 ViewModel 类 public class HomeViewModel { public
我有一个非常简单的 MVC 2 表单。它有两个下拉菜单,用户和角色。无论我选择什么,员工下拉列表都会通过验证,而角色下拉列表不会通过验证。尽管我计划实现一个,但没有默认的“空”选项,这就是为什么我需要
我正在尝试在文件生成程序中为某些状态建模, 在一个点上 : 我想检查数据的当前状态 如果数据有效,我想继续 否则,我想通知用户无法继续的原因 伪代码将类似于: if(isValid()){ w
我正在尝试在 this video 的帮助下根据属性的可用性验证名为 Book 的模型。我正在尝试按照有关如何验证 Backbone.js 模型的说明进行操作,但是当我使用 .isValid() 方法
我有一个 javascript 类 c我正在尝试调用它的方法 isValid()关于onClick输入提交按钮的事件。我有c目前在我的提交按钮下方的一组脚本标签中。当我点击提交按钮时,我得到 Unca
我正在为 Com 执行一项小型任务。科学课,这是一门初级课,但我之前没有编码经验,所以我连基础知识都吃力。我会问很多问题,我很抱歉。我们被要求创建一个方法来遍历字符串的所有字符,看看它们是 A G C
我想从 html 页面上的 dropdownList 获取参数并将其发送到我的 Controller ,创建新的模型对象,并将其插入数据库。 这是我的 Controller (创建 My_Model
尝试创建一个简单的 Jmeter 5.0 测试以使用 JDBC 连接配置连接到数据库。无法连接到我的本地 mySql 数据库。 [jdbc:mysql://localhost:3306]。我可以使用
我几乎总是想在回发时检查 ModelSate.IsValid 是否被调用。而且必须在每次回发开始时进行检查违反了 DRY 原则,有没有办法让它自动检查? 例子: [HttpPost("Register
我的模型类如下: public class PostInputViewModel { [Required] [MinLength(1)] [Ma
我是一名优秀的程序员,十分优秀!