Asp.net mvc 如何在MVC Razor中搜索同一页面
如何在MVC Razor中搜索同一页面?例如如果我搜索返回,我的页面在打开时没有任何结果。我必须使用Asp.net mvc 如何在MVC Razor中搜索同一页面,asp.net-mvc,razor,Asp.net Mvc,Razor,如何在MVC Razor中搜索同一页面?例如如果我搜索返回,我的页面在打开时没有任何结果。我必须使用IEnumerable获取结果,但如果我使用IEnumerable获取空页面,我将得到错误 搜索页面 @model IEnumerable<SearchResult> <span>Search results:</span> <p> @foreach(var item in Model) { @item.Title<
IEnumerable
获取结果,但如果我使用IEnumerable
获取空页面,我将得到错误
搜索页面
@model IEnumerable<SearchResult>
<span>Search results:</span>
<p>
@foreach(var item in Model)
{
@item.Title<br/>
}
</p>
@model IEnumerable
搜索结果:
@foreach(模型中的var项目)
{
@项目名称
}
对于这种情况,您需要返回空模型。例如,在控制器代码中:
public ActionResult Test()
{
// some actions
return View(new List<SearchResult>());
}
公共操作结果测试()
{
//一些行动
返回视图(新列表());
}
在这种情况下,它将发送空模型,并且不会失败 您可以创建包含搜索属性和结果列表的模型 型号
Public class MySearchModel{
public string searchInput { get; set; }
public List<mySearchResultModel> resultList { get; set; }}
查看
@model MySearchModel
<div>
@Html.LabelFor(x => x.searchInput)
@Html.TextBoxFor(x => x.searchInput)
</div>
<span>Search results:</span>
@foreach (var item in Model.mySearchResultModel){
@item.Title<br />
}
@model IEnumerable<mySearchResultModel>
<input type="text" name="searchInput"/>
Search results:
@foreach(var item in Model) { @item.Title<br/> }
查看
@model MySearchModel
<div>
@Html.LabelFor(x => x.searchInput)
@Html.TextBoxFor(x => x.searchInput)
</div>
<span>Search results:</span>
@foreach (var item in Model.mySearchResultModel){
@item.Title<br />
}
@model IEnumerable<mySearchResultModel>
<input type="text" name="searchInput"/>
Search results:
@foreach(var item in Model) { @item.Title<br/> }
@model IEnumerable
搜索结果:
@foreach(模型中的var项){@item.Title
您会遇到什么错误?如何将数据从控制器发送到视图?您也可以显示此代码吗?我在第一次打开页面时遇到错误,因为我以Get方法调用页面,并且此页面的ActionResult仅返回视图(),不返回任何模型。谢谢您的帮助。