ASPNET 5 MVC 6中的远程验证

时间:2015-10-24 18:46:34

标签: c# validation asp.net-core asp.net-core-mvc

在aspnet 5中找不到JsonRequestBehavior

我正在尝试实现远程验证演示,看起来Microsoft.AspNet.Mvc不包含JsonRequestBehavior枚举。 但它确实存在于以前版本的MVC中的System.Web.Mvc命名空间

型号:

public class Person : Entity
    {
        [Required]
        [StringLength(512)]
        [Remote("IsAllowedName", 
                "Validation", 
                ErrorMessage="This name is not allowed!"
               )]
        [Display(Name = "First (and middle) name")]
        public String FirstMidName { get; set; }

查看:

...
<input asp-for="FirstMidName"/>
<span asp-validation-for="FirstMidName"></span>
...

控制器:

[HttpGet]
public JsonResult IsAllowedName(string FirstMidName)
{
    if (FirstMidName.ToLower() == "oleg")
    {
        return Json(false, JsonRequestBehavior.AllowGet); 
    }
    return Json(true);
}

终端输出:

MacBook-Air-Anton:labefmvc antonprudkoglyad$ dnu build 
...
/Users/antonprudkoglyad/Projects/LabEFMVC/LabEFMVC/Controllers/
ValidationController.cs(20,24):
DNXCore,Version=v5.0 error CS0103: The name 'JsonRequestBehavior'
does not exist in the current context

Build failed.

1 个答案:

答案 0 :(得分:1)

在ASP.NET Core RC1中,[Remote]属性位于 Microsoft.AspNet.Mvc 命名空间中。 在ASP.NET Core RC2中,我相信[Remote]属性位于 Microsoft.AspNetCore.Mvc 命名空间中。

function foo(myCallback){
  return myCallback();
}

function bar(){
    var result = foo(function(){
        var result = "hello"; 
        return result;
    });
  return result;
}
var showResult = bar();
alert(showResult);