C# 搜索方法在视图中不工作

C# 搜索方法在视图中不工作,c#,asp.net,asp.net-mvc-4,search,razor,C#,Asp.net,Asp.net Mvc 4,Search,Razor,我在“MusicController”上创建了此搜索方法: 此方法在my_Layout.cshtml中调用: @using (Html.BeginForm("Search", "Music",null, FormMethod.Post, new {@class ="navbar-form navbar-left" , role="search"})) { <div class="form-group"> @Html.TextBox("sea

我在“MusicController”上创建了此搜索方法:

此方法在my_Layout.cshtml中调用:

     @using (Html.BeginForm("Search", "Music",null, FormMethod.Post, new {@class ="navbar-form navbar-left" , role="search"}))
{
      <div class="form-group">
           @Html.TextBox("search")
      </div>
      button type="submit" class="btn btn-default" value="search">Submit</button>
} 
@使用(Html.BeginForm(“Search”、“Music”、null、FormMethod.Post、new{@class=“navbar form navbar left”、role=“Search”}))
{
@文本框(“搜索”)
按钮type=“submit”class=“btn btn default”value=“search”>提交
} 
因此,当用户在文本框中输入一个值并单击“提交”按钮时,将重定向到此视图:

@model IEnumerable<TestTcc2.Models.Musica>

@{
    ViewBag.Title = "Search";
    Layout = "~/Views/Shared/_LayoutOuvinte.cshtml";
}
<h2>Search</h2>
<table>
       <tr>
        <th>
            <span>Genero</span>
        </th>

        <th>
            <span>Nome</span>
        </th>
        <th>
            <span>Artista</span>
        </th>
        <th>
            <span>Preço</span>
        </th>
        <th></th>
    </tr>
@foreach (var item in Model) {
    <tr>
        <td>
            @Html.DisplayFor(modelItem => item.genero.Nome)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.Nome)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.NomeArtista)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.Preco)
        </td>
        <td>
            @Html.ActionLink("Play", "", new { path = item.path }) |
        </td>
    </tr>
}
</table>
@model IEnumerable
@{
ViewBag.Title=“搜索”;
Layout=“~/Views/Shared/_layoutuuvinte.cshtml”;
}
搜寻
慷慨的
诺姆
艺人
普雷西奥
@foreach(模型中的var项目){
@DisplayFor(modeleItem=>item.慷慨解囊.Nome)
@DisplayFor(modeleItem=>item.Nome)
@DisplayFor(modelItem=>item.NomeArtista)
@DisplayFor(modeleItem=>item.Preco)
@ActionLink(“播放”,“新建{path=item.path}”)|
}
在这个视图中,用户应该看到搜索方法的结果,我认为我需要在“if(item.Nome==“searchResult”)”之后加一个if,但我不知道将搜索方法的结果放在表中的最佳方式是什么


有人能帮我吗?基本上,我需要在“搜索”视图的表中返回搜索方法的结果。

没有看到您的模型类和相关项,我只能建议您查看返回到视图的内容

调试控制器并在线路上放置断点:

return View(musicas);
检查musicas中有什么,子项是否在那里并且可以导航?您使用了:

@Html.DisplayFor(modelItem => item.genero.Nome)
如果慷慨解囊子项不可用,则会出现错误

此外,db.Musicas是否与以下内容相同:

IEnumerable<TestTcc2.Models.Musica>
IEnumerable

从数据库/数据集等获取数据是一回事,但它需要与页面上使用的模型结构相同

你有什么问题?是否正在引发异常?它是否没有返回您期望的结果?(如果(item.Nome==“searchResult”),则不需要
IEnumerable<TestTcc2.Models.Musica>