【发布时间】:2015-03-12 10:52:00
【问题描述】:
我的代码是这样的
public class Payer
{
public int PayerId { get; set; }
[Remote("PayerNameExists", "Payer", "Payer name already exists.", AdditionalFields = "PayerID"), Required]
public string Name { get; set; }
public double PatientContribution { get; set; }
}
内部控制器
public JsonResult PayerNameExists(string Name,int PayerID=0)
{
var user = db.Payer.Where(x => x.Name == Name.Trim()&&x.PayerId!=PayerID);
return !user.Any() ?
Json(true, JsonRequestBehavior.AllowGet) :
Json(string.Format("{0} is already exists.", Name),
JsonRequestBehavior.AllowGet);
}
并且在视图中 (Edit)
@Html.TextBoxFor(model => model.Name)
我的问题是,在函数 PayerNameExists PayerID 内部总是以 zero 出现,我希望在那里得到我的模型 ID。谁能告诉我如何实现这一目标?
注意:从客户端发送的数据是这样的
/Payer/PayerNameExists?area=Payer%20name%20%20already%20exists.&Name=ICICIx&PayerID=undefined
【问题讨论】:
-
为什么你在
public JsonResult PayerNameExists(string Name,int PayerID=0)中将玩家 ID 分配为 0... 删除并重新测试 -
您是否在视图中为
PayerID呈现控件? - 例如@Html.HiddenFor(m => m.PayerID)? -
也许是缺少绑定属性? stackoverflow.com/questions/13330783/…
-
@StephenMuecke 是的。我正在渲染它
-
@Juan 试过了。不工作
标签: c# asp.net asp.net-mvc validation razor