0

我正在尝试在我的应用程序中使用远程验证来检查已经存在的记录。

这里:

[Required(ErrorMessage = "*")]
public Nullable<long> fk_Store_ID { get; set; }

    [System.Web.Mvc.Remote("doesGround", "User", HttpMethod = "POST", ErrorMessage = "Ground Level is already exists for this store.", AdditionalFields = "fk_Store_ID")]
[DefaultValue(false)]
    public bool MembershipGroundLevel { get; set; }

和我的控制器动作:

[HttpPost]
public JsonResult doesGround(bool MembershipGroundLevel, long? fk_Store_ID)
{
    Int64 store_id = Convert.ToInt64(fk_Store_ID);
    var count = db.tbl_Membership
     .Where(o => o.fk_Store_ID == store_id && o.MembershipGroundLevel == true && o.isVisible == true).Count();
    return count >= 1 ? Json(false, JsonRequestBehavior.AllowGet) : Json(true, JsonRequestBehavior.AllowGet);
}

在这里,我得到了两者的 NULL 值。如果我将数据类型分别更改为 bool 和 long 。我收到内部服务器 500 错误

4

1 回答 1

0

我认为您的操作doesGround定义有误,请尝试以下一项

public JsonResult doesGround(bool MembershipGroundLevel, long? fk_Store_ID)

询问您的验证UserController控制器是否在 中也很好Area,是的,您需要RemoteAttributeRoutData属性在定义中指定区域名称。

于 2015-06-13T15:28:36.347 回答