ASP.NET MVC验证表单

a1239750460 2017-09-12 01:09:50
代码如下

[Required(ErrorMessage = "标题不能为空")]
[Remote("NotExitesUserName","ProductM",ErrorMessage ="标题重复")]
public string product_Name { get; set; }


[HttpGet]
public JsonResult NotExitesUserName()
{
string product_Name = Request.Params["product_Name"];
var productm = yht.product.Where(x => x.product_Name == product_Name).FirstOrDefault();
return productm == null ? Json(true,JsonRequestBehavior.AllowGet):Json(false,JsonRequestBehavior.AllowGet);
}

添加的时候是对的

但是编辑的时候就有问题了

如果编辑的时候不改标题,就会提示了。
我把控制器的代码改成

[HttpGet]
public JsonResult NotExitesUserName(int id)
{

string product_Name = Request.Params["product_Name"];
var productm = yht.product.Where(x => x.product_Name == product_Name).FirstOrDefault();
return productm == null || productm.product_ID==id ? Json(true,JsonRequestBehavior.AllowGet):Json(false,JsonRequestBehavior.AllowGet);
}

添加跟编辑就都出问题了
...全文
338 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
a1239750460 2017-09-13
  • 打赏
  • 举报
回复
引用 5 楼 chb345536638 的回复:
你看下网页生成的源代码,看下标题框那里,有生成data-val-remote-additionalfields这样的属性的,如果你不用Remote特性标记,也可以自己手动在前台给加起来也会有效果,可以看下这里最后写了一下的
感谢感谢
  • 打赏
  • 举报
回复
你看下网页生成的源代码,看下标题框那里,有生成data-val-remote-additionalfields这样的属性的,如果你不用Remote特性标记,也可以自己手动在前台给加起来也会有效果,可以看下这里最后写了一下的
a1239750460 2017-09-12
  • 打赏
  • 举报
回复
引用 3 楼 chb345536638 的回复:
[quote=引用 2 楼 a1239750460 的回复:] [quote=引用 1 楼 chb345536638 的回复:] [Remote("NotExitesUserName","ProductM",ErrorMessage ="标题重复",AdditionalFields = "id")] public JsonResult NotExitesUserName(int?id) 允许id为空,编辑的时候根据这个id查找除了该id的其他的标题,比对有没有存在的
添加的时候是可以了,但是编辑还是不行

[HttpGet]
        public JsonResult NotExitesUserName(int? id) 
        {
            string product_Name = Request.Params["product_Name"];
            var productm = yht.product.Where(x => x.product_Name == product_Name).FirstOrDefault();
            if(productm==null||productm.product_ID==id)
            {
                return Json(true, JsonRequestBehavior.AllowGet);
            }
            else
            {
                return Json(false, JsonRequestBehavior.AllowGet);
            }
        }
[/quote] 看你的图,你表里的主键模型字段是product_ID?没有id吧?那你要把我刚才你改的都改成product_ID,要对应才能获得值,你仔细看看有没有值吧[/quote] 可以了,太感谢你了! 有一个问题想请教一下,就是那个product_ID的值是怎么来的?新手一枚
  • 打赏
  • 举报
回复
引用 2 楼 a1239750460 的回复:
[quote=引用 1 楼 chb345536638 的回复:] [Remote("NotExitesUserName","ProductM",ErrorMessage ="标题重复",AdditionalFields = "id")] public JsonResult NotExitesUserName(int?id) 允许id为空,编辑的时候根据这个id查找除了该id的其他的标题,比对有没有存在的
添加的时候是可以了,但是编辑还是不行

[HttpGet]
        public JsonResult NotExitesUserName(int? id) 
        {
            string product_Name = Request.Params["product_Name"];
            var productm = yht.product.Where(x => x.product_Name == product_Name).FirstOrDefault();
            if(productm==null||productm.product_ID==id)
            {
                return Json(true, JsonRequestBehavior.AllowGet);
            }
            else
            {
                return Json(false, JsonRequestBehavior.AllowGet);
            }
        }
[/quote] 看你的图,你表里的主键模型字段是product_ID?没有id吧?那你要把我刚才你改的都改成product_ID,要对应才能获得值,你仔细看看有没有值吧
a1239750460 2017-09-12
  • 打赏
  • 举报
回复
引用 1 楼 chb345536638 的回复:
[Remote("NotExitesUserName","ProductM",ErrorMessage ="标题重复",AdditionalFields = "id")]
public JsonResult NotExitesUserName(int?id)

允许id为空,编辑的时候根据这个id查找除了该id的其他的标题,比对有没有存在的

添加的时候是可以了,但是编辑还是不行

[HttpGet]
public JsonResult NotExitesUserName(int? id)
{
string product_Name = Request.Params["product_Name"];
var productm = yht.product.Where(x => x.product_Name == product_Name).FirstOrDefault();
if(productm==null||productm.product_ID==id)
{
return Json(true, JsonRequestBehavior.AllowGet);
}
else
{
return Json(false, JsonRequestBehavior.AllowGet);
}
}


  • 打赏
  • 举报
回复
[Remote("NotExitesUserName","ProductM",ErrorMessage ="标题重复",AdditionalFields = "id")] public JsonResult NotExitesUserName(int?id) 允许id为空,编辑的时候根据这个id查找除了该id的其他的标题,比对有没有存在的

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧