问题标签 [asp.net-mvc-2-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.

0 投票
2 回答
815 浏览

asp.net-mvc - MVC 模型验证程序化注册支持

今天(2010 年 1 月 15 日)Scott 写了一篇关于 ASP.NET MVC2 模型验证的博客

http://weblogs.asp.net/scottgu/archive/2010/01/15/asp-net-mvc-2-model-validation.aspx

任何人都知道如何以编程方式在运行时添加验证规则?

“程序化注册”是ValidationAspects支持的类似功能

0 投票
1 回答
832 浏览

asp.net-ajax - ASP.Net MVC 2 RC:如何使用客户端验证和列表的数据注释?

我的问题:

我无法让数据注释客户端验证与我的视图数据类中的列表一起使用。

瘦子

在我的视图数据类中,我有一个列表。

我拥有使用数据注释所需的 Person 类的所有属性。

在视图中,我像这样循环列表:...

生成的 HTML

结果

根本没有工作。

我尝试过的其他事情:

尝试在视图中使用这些 HTML Helper 方法:

生成的输出:

结果

有趣的是,当我在第一个文本框上触发验证时它会同时为所有文本框触发。其余的文本框根本不会触发验证。

请注意,所有为文本框生成的 id 和名称及其对应的错误文本 span 元素都是相同的。

有谁知道如何在视图数据中使用带有列表的客户端验证,支持 ModelBinding

谢谢!

0 投票
1 回答
994 浏览

asp.net-mvc - Mvc2 验证摘要和所需的元数据

源代码...

事情是,如果我使用像这样的流利的模型元数据提供程序指定所需的元数据=>

并将其写入我的视图 =>

并将其添加到家庭控制器 =>

它将输出这个 html =>

我不明白为什么会呈现第二个错误以及如何省略它。

System.Web.Mvc.Extensibility 框架的作者回复为 =>

我认为这是 asp.net mvc 的一个已知问题,我不记得我读过它的确切位置,我建议你在 asp.net mvc 问题跟踪器中通过 codeplex 发布这个问题。

但在我在问题跟踪器上发布任何内容之前 - 我想先了解到底是什么问题。

有什么帮助吗?

0 投票
2 回答
2131 浏览

asp.net-mvc - 用于整个模型验证的 ASP.NET MVC 2 RC 2“向导”

MVC 中的多页“向导”控件有一个很好的简单解决方案:

http://www.highoncoding.com/Articles/647_Creating_Wizard_Using_ASP_NET_MVC_Part_1.aspx

http://www.highoncoding.com/Articles/652_Creating_Wizard_in_ASP_NET_MVC_Part_2.aspx

该模型通过几个步骤填充,隐藏字段用于在页面之间持久化数据(有点类似于 ViewState)。但是,随着 MVC 2 RC2 的发布,验证机制已经从“输入验证”更改为“模型验证”: http ://bradwilson.typepad.com/blog/2010/01/input-validation-vs-model -validation-in-aspnet-mvc.html

现在“向导”中的第一页永远不会得到验证,因为它只填充了模型的一部分。(其余的将在进一步的步骤中填充,但由于可能存在必填字段,因此在第一页的验证期间会显示验证错误,并且用户无法继续)。

有没有办法修改“向导控制”的这种实现以适应 MVC RC2,还是应该重新考虑整个逻辑?是否有更好的模式来创建用于填充模型的多页“向导控件”?

0 投票
1 回答
1832 浏览

c# - 如何验证 MVC2 表单中的多选?

这似乎是一个非常基本的场景,但我认为它没有一个圆满的结局。

我有一个简单的项目类:

我想确保至少选择了一个相关类别。如何在视图中使用 Html.EnableClientValidation() 和模型中的装饰器来验证这一点?如果这是不可能的,那么后备是什么?

同样令人沮丧,并且可能是验证的障碍是我做不到......

...因为这将尝试将 Project.Categories 表单值(字符串数组)与应该是 Category 类型相关联,但不能(我收到错误“The parameter conversion from type 'System.String ' 键入失败,因为没有类型转换器可以在这些类型之间转换")。因此,我必须将表单名称更改为 m.Categories 之类的名称,从而与 Product 类分离,因此我想用任何验证逻辑来​​装饰它。

哇,对我来说这太疯狂了。我们不能使用 MVC2 装饰器验证一个简单的多选列表吗?

0 投票
2 回答
743 浏览

asp.net-mvc-2 - 从生成的类生成数据注释

我有一个 linq to sql 对象或必要的实体框架对象。

我想为他们做 MVC 2 数据注释,但我总是懒惰。

有没有办法自动生成数据注释 a-la

这样我就不必自己做这一切了吗?

0 投票
2 回答
2838 浏览

asp.net-mvc - 未创建 ASP.NET MVC 2 客户端验证规则

MVC 没有为我的视图模型生成客户端验证规则。HTML 仅包含以下内容:

注意Fields[]是空的!

我的视图是强类型的,并使用新的强类型 HTML 助手(TextBoxFor()等)。

查看模型/领域模型

(我知道我使用域模型作为我的 / 作为我的视图模型的一部分,这不是一个好的做法,但现在忽略它。)

看法

Whatever在视图模型中包含了该属性,因为我怀疑 MVC 没有递归检查 的子属性ItemFormViewModel.Item,但即使这样也没有得到验证?我什至尝试过深入研究 MVC 框架源代码,但结果是空的。会发生什么?

0 投票
1 回答
658 浏览

asp.net - ASP.NET MVC 2 验证器的全球化

无论如何要覆盖来自 ValidationAttributes 的自定义验证错误消息?

基本上我需要 ValidationAttributes 来支持全球化。

0 投票
1 回答
501 浏览

asp.net-mvc-2-validation - ASP.NET MVC 2 RTM - 使用数据注释进行本地化的多属性验证失败

我的资源文件工作正常,资源文件中定义了两个键(ValNameRequired 和 ValNameLength)。但是,当您有多个具有本地化的属性时,验证将不起作用。有人有解决方案吗?

0 投票
2 回答
1508 浏览

asp.net-mvc-2-validation - ASP.NET MVC 2 JQuery POST 不显示模型状态错误

我一直在使用 asp.net mvc (但我还是个初学者)。由于 jquery 回发,我希望能够更新两个视图。

基本上我有一个列表和一个详细信息视图。详细信息视图使用 jquery 弹出窗口(使用 jquery-UI 弹出窗口)呈现。如果详细信息保存成功(即详细信息视图上没有验证错误),我只想更新列表。但是,如果详细信息视图中有任何验证错误,我想更新详细信息视图,以便用户看到验证错误。

所以我想在我的控制器中,我返回一个 JsonResult 而不是一个视图。

如您所见,如果没有错误,我会返回人员列表视图,但如果有任何验证错误,我会返回详细信息视图。我返回 JsonResult 的原因是我需要告诉我的视图有一个错误,以便视图(jquery)知道要更新哪个部分(例如是否更新人员列表“div”或弹出对话框“div” ')。

因此,在我看来,jquery 如下(请假设有一个用于输入人员详细信息的表单,并在单击“保存”按钮时调用“SubmitPersonForm();”函数):

所以我现在遇到的问题是,当出现验证错误时,我确实看到正确的“div”正在更新,但我丢失了 asp.net mvc 验证消息。我没有看到任何红色的验证错误,好像 ASP.NET MVC 完全忽略了它们。但是,我的 ModelState 确实有这些错误,只是没有显示在详细信息视图中。我的详细信息视图中确实有验证摘要和 Html.ValidationFor(m => ...) 语句。

有人可以告诉我为什么我没有看到验证错误吗?虽然我使用的是 JSonResult,但在渲染“dvDetails”时,我确实使用了正确的属性,这是一个有效的视图。我在做一些我不应该在 asp.net mvc 中做的事情吗?顺便说一句,我将 asp.net mvc2 RC 与 Visual Studio 2010 RC 一起使用。

谢谢你。