我的模型继承自一个接口:
public interface IGrid
{
ISearchExpression Search { get; set; }
.
.
}
public interface ISearchExpression
{
IRelationPredicateBucket Get();
}
该模型:
public class Project : IGrid
{
public ISearchExpression Search { get; set; }
public Project()
{
this.Search = new ProjectSearch();
}
}
项目搜索:
public class ProjectSearch: ISearchExpression
{
public string Name { get; set; }
public string Number { get; set; }
public IRelationPredicateBucket Get()
{...}
}
以及主视图中的强类型局部视图:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<ProjectSearch>" %>
<%= Html.TextBoxFor(x=>x.Name)%>
<%= Html.TextBoxFor(x => x.Number)%>
....
当我提交表单时,该Search
属性没有正确绑定。一切都是空的。动作需要一个ProjectSearch
类型的参数。
为什么Search
不按预期绑定?
编辑
那个行动
public virtual ActionResult List(Project gridModel)
{..}