问题标签 [asp.net-mvc-validation]
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.
validation - ASP.NET MVC 3 中的 DRY 远程验证
我已经阅读了 David Hayden 关于MVC 3 Remote validation的精彩帖子。
但是,这里介绍了启用远程 (javascript) 验证应采取的措施。如果用户禁用了 javascript,即使数据无效,仍然会发布帖子。因此,应该进行服务器端验证。
我们怎样才能使这个检查尽可能 DRY(不要重复自己)?当然,在 post 操作中包含与远程验证操作(或只是相同的调用)相同的检查代码可以工作,但我想知道是否可以使用单行或更优雅的东西。
完全可以接受的答案包括“不,做不到”。:)
c# - 清单验证财产
我在 ASP.NET MVC 2 中使用数据注释和服务器/客户端验证内容。如果类具有以下属性,则一切正常:
但我不知道如何做到这一点:
我希望 int 在那个范围内。
asp.net-mvc - requestValidationMode="2.0" 实际上做了什么?
我正在尝试解决“从客户端检测到潜在危险的 Request.Form 值”问题,SO 答案和 Scott Hanselman建议设置
在 Web.config 中(以及向有问题的方法添加属性)。
我意识到这会将验证模式更改为 ASP.NET 2.0,但这意味着什么?
而且,这种变化是否有我应该注意的副作用?
谢谢。
c# - 针对 ASP.Net-MVC3 中的对象的客户端验证?
我有一个 HTML5 表单,其动作定义如下:
该表单包含两个文本字段:
txtGeoLocation 字段是一个自动完成字段,它从缓存的对象提供,通过控制器和模型存储库类通过以下 jQuery 代码提供:
那里有一个用于调试的警报。单击下拉的文本时,会触发此警报,但是如果您输入整个单词并点击提交,它不会触发。
我想首先在客户端验证地理文本框中的文本,以确保它是集合中包含的值,而不是,让文本框为红色,传达这一点。
谢谢。
c# - 手动调用 ModelState 验证
我使用的是 ASP.NET MVC 3 代码优先,并且我已经在我的模型中添加了验证数据注释。这是一个示例模型:
在我的网站中,我有一个创建新产品的多步骤过程 - 第 1 步输入产品详细信息,第 2 步输入其他信息等。在每一步之间,我将每个对象(即产品对象)存储在 Session 中,所以用户可以回到流程的那个阶段并修改他们输入的数据。
在每个屏幕上,我都有客户端验证,可以很好地使用新的 jQuery 验证。
最后一个阶段是确认屏幕,之后在数据库中创建产品。但是,因为用户可以在各个阶段之间跳转,所以我需要验证对象(产品和其他一些对象)以检查它们是否正确完成了数据。
有没有办法以编程方式对具有数据注释的对象调用 ModelState 验证?我不想遍历对象上的每个属性并进行手动验证。
如果可以更轻松地使用 ASP.NET MVC 3 的模型验证功能,我愿意接受有关如何改进此过程的建议。
asp.net-mvc-3 - 如何在 MVC 3 中向 ValidationSummry 返回错误
我有一个我不知道如何实施的想法。在 MVC 3 控制器中,我有一个 if 语句,如果 if 语句失败,我希望控制器返回一条错误消息。而且我在该页面上有一个 ValidationSummery,所以如果它能够捕获错误消息并呈现它会更好..
我该怎么做呢?
谢谢
asp.net - 有条件地禁用验证
我有几个文本框通过验证(服务器和客户端)的表单。在表单中,我有按钮:“下一步”、“返回”、“取消”。所以我不需要验证来启动然后用户点击“返回”或“取消”按钮。我怎样才能做到这一点?提前致谢!
一些样本:
在服务器端,我使用 DataAnnotations 属性进行验证。
asp.net-mvc - 自定义对象的 MVC 验证器
我的视图和自定义对象有一些模型作为属性,如下所示:
在视图中:
例如,在 Model.Data 我放置了一些具有属性的对象Name
:DateBirth
和Amount
。我想为这些属性创建编辑器,如下所示:
但我不能这样做,因为m.Data
is object
,编译器不会通过它。如果使用 EditorFor - 我可以用我自己的替换它<input type="..." ... />
而不会出现问题。
但是我找不到如何将 MVC 的验证器(来自 MicrosoftMvcValidation.js)包含到我的输入中的方法,并且我不想为来自System.ComponentModel.DataAnnotations
.
有没有一种方法可以为我的自定义对象使用MVC 的验证器,而无需提供有关它具有哪些属性的信息(我通过反射枚举属性来生成编辑器)。
UPD:我不能写,@Html.ValidateMessageFor(m => m.Data.Name)
因为我以前不知道属性名称。我只能通过这样的反射来做到这一点:@Html.ValidateMessageFor(m => m.Data.GetType().GetProperty(colName).GetValue(m.Data, null))
,其中colName
包含属性名称(名称、出生日期或金额)。
data-annotations - Castle Validators 可以使用 DataAnnotations 属性吗?
有没有一种方法可以使 DataAnnotations 属性(例如Required与 Castle Validators一起使用) ?
我知道 Castle 有自己的属性 - 但我想为视图和业务逻辑使用相同的属性。所以我希望这些属性用于视图验证和任何业务逻辑验证。我知道这种方法并不理想。
asp.net-mvc-3 - DataType 属性不起作用
在 ASP.NET MVC 3 Web 应用程序中,我有一个视图模型,其属性标记为 DataType 属性,但它们不会在客户端和服务器端进行实际验证,为什么?
感谢回复。