我是 asp.net mvc 的新手,我想知道我所做的是否正确。
我想创建一个用于搜索人的视图。这是我到目前为止所拥有的:
商业模式类:
public class Person { public int Id { get; set; } public string FirstName { get; set; } public string LastName { get; set; } public Address Address { get; set; } public DateTime DOB { get; set; } public List<Telephone> Telephones { get; set; } }
视图模型类:
public class SearchPersonViewModel { public int Id { get; set; } public string FullName { get; set; } public string LicencePlate { get; set; } public string CarMake { get; set; } public string CarModel { get; set; } }
部分观点:
@model IEnumerable<MvcApplication2.Models.SearchPersonViewModel> @foreach (var item in Model) { @Html.DisplayFor(m => item.Id) @Html.DisplayFor(m => item.FullName) }
调用局部视图的视图:
@Html.Action("Search", "Person");
*PersonController中的控制器方法:
[ChildActionOnly]
public ActionResult Search()
{
List<SearchPersonViewModel> model = new List<SearchPersonViewModel>();
model.Add(new SearchPersonViewModel() { FullName = "test", Id = 3 });
return PartialView("_SearchPerson", model);
}
现在的问题是每当加载主视图时都会调用 Search 方法。我想要的是在主视图上添加一个搜索文本框,用于过滤在部分视图中呈现的集合。我怎么能那样做?