Asp.net mvc 4 绑定前缀MVC
我读过 但是,这是我的代码,它不起作用。 控制器名称为:“UserInfo.user\u name” 谢谢 更新 添加我的视图:Asp.net mvc 4 绑定前缀MVC,asp.net-mvc-4,Asp.net Mvc 4,我读过 但是,这是我的代码,它不起作用。 控制器名称为:“UserInfo.user\u name” 谢谢 更新 添加我的视图: @Html.EditorFor(x => x.UserInfo) 这是EditorTemplate: <div> @Html.LabelFor(m => m.user_name) @Html.TextBoxFor(m => m.user_name, new { required = tr
@Html.EditorFor(x => x.UserInfo)
这是EditorTemplate:
<div>
@Html.LabelFor(m => m.user_name)
@Html.TextBoxFor(m => m.user_name, new { required = true})
@Html.ValidationMessage("user_name", new { @class = "error"})
</div>
只有在视图中,如果使用
UserInfo\u user\u name
呈现模型,则可以使用Bind
。我建议你读书。假设在你看来,有两个属性是不明确的。然后你可以使用你的绑定。我想你可以把它和模型一起使用。如果您的控制器名称为UserInfo.user\u name
,则无所谓。重要的是模型。我想如果我们看到你的观点,我们可以得到一些重要的信息。希望看完链接后能对你有所帮助
试试这个:
`
public JsonResult UniqueUserName([Bind(Prefix="UserInfo")] Info info)
{
//and retreive your user_name via the model info
}
`
我希望它能帮助你 没有。没有成功:(我把它放在GET操作中,经过调试,HtmlFieldPrefix中填充了“UserInfo”。JsonResult由远程DataAnnotation属性调用(不是POST)并且用户名属性为null…您能看看远程调用完成时调用的对象是什么吗?只需在导航器上按F12,然后按“网络选项卡”。或者您可以检查页面源的id名称并将其与远程操作中的参数匹配这是我的requestURL:。这正是我在m上写的第一个问题。
public class Info
{
[DisplayName("User Name")]
[Required]
[Remote("UniqueUserName", "Create")]
public string user_name { set; get; }
}
public class EvalInfo
{
public Info UserInfo { set; get; }
public EvalInfo()
{
UserInfo = new Info();
}
}
`
public JsonResult UniqueUserName([Bind(Prefix="UserInfo")] Info info)
{
//and retreive your user_name via the model info
}