为了账号安全,请及时绑定邮箱和手机立即绑定

远程验证型号清单

远程验证型号清单

C#
守候你守候我 2019-12-06 10:54:54
我使用了以下教程:http : //msdn.microsoft.com/zh-cn/library/gg508808%28VS.98%29.aspx一切似乎都很好,但就我而言,字符串Username总是返回null。经过大量研究,我发现每个人都发现了BIND前缀。在许多情况下,这将是很好的选择,但在这种情况下却不是。我应该注意所有属性和名称对齐,但是在我的for循环中,EditorFor创建了一个[i] .Username字段,并且此字段未映射到任何模型属性。问题:我想我想将[i] .Username映射到Username,其中i是从0到无穷大的任何数字,因此当它GETS时,该值将正确传递给Action。我该怎么做呢?如果这是错误的,我该如何对表中的特定行进行验证?@for (var i = 0; i < Model.Count; i++){  BLAH BLAH BLAH CODE FOR BUILDING TABLE ROWS  <td>     @Html.EditorFor(modelItem => Model[i].Username)  </td>                               }因为从技术上讲我可以拥有成百上千的记录(如果没有成千上万的记录),那么我宁愿没有针对所有1000的具有约束力的前缀。我在这里根本上缺少什么吗?我是ASP.NET MVC的新手,并且习惯于WebForms,所以我感觉有时候我在混搭概念并混搭完全错误的东西。编辑: 我通过执行以下修复,但不确定这是否是最好的主意。我将参数设置为等于不带[i]前缀的FieldName,但是仍然检索带[i]前缀的元素。Javascript不是我的强项,所以请让我知道它是否可怕。adapters.add("remote", ["url", "type", "additionalfields"], function (options) {    var value = {        url: options.params.url,        type: options.params.type || "GET",        data: {}    },        prefix = getModelPrefix(options.element.name);    $.each(splitAndTrim(options.params.additionalfields || options.element.name), function (i, fieldName) {        var paramName = fieldName.substr(fieldName.lastIndexOf(".") + 1);        var actualFieldName = appendModelPrefix(fieldName, prefix)        value.data[paramName] = function () {            return $(options.form).find(":input").filter("[name='" + escapeAttributeValue(actualFieldName) + "']").val();        };    });    setValidationValues(options, "remote", value);});
查看完整描述

2 回答

?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

不确定-我尚未测试(目前没有时间)。如果尝试进行操作,但有问题,则建议您为该问题添加评论(请参阅答案中的链接),以便得到解决。有趣的[Remote]是,由于这个问题,我最近报告了另一个有关其他字段的错误 

查看完整回答
反对 回复 2019-12-06
  • 2 回答
  • 0 关注
  • 412 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信