2016-11-28 4 views
0

У меня есть этот вид, чтобы сделать меню, в котором я использую @ Html.Action:Ошибка при помощи Html.Action MVC 4

@model SGP.Models.Turma 

@{ 
    ViewBag.Title = "Menu"; 
} 

... 
@Html.Action("AvaliacaoLista", "Turma", new { id = Model.TurmaId }) 

вид в Html.Action:

@model List<SGP.Models.PessoaModel2> 
@using (Html.BeginForm()) 
{ 
    @Html.AntiForgeryToken() 
    @Html.ValidationSummary(true) 
      <th>Nome</th> 
      <th>Numero</th> 

      @foreach (String s in ViewBag.Componentes) 
      { 
       <th>@s</th> 
      } 

      <th>Nota Final</th> 
     </tr> 

     @for (int i = 0; i < Model.Count; i++) 
     { 
      <tr> 
       @Html.HiddenFor(x => Model[i].turmaId) 
       @Html.HiddenFor(x => Model[i].userid) 
       <td>@Model[i].nome</td> 
       <td>@Model[i].num</td> 

       @for (int a = 0; a < Model[i].am.Count; a++) 
       { 
        @Html.HiddenFor(x => Model[i].am[a].AvaliacaoId) 
        <td>@Html.DisplayFor(x => Model[i].am[a].nota)</td> 
       } 
       <td>@Model[i].notafinal</td> 
      </tr> 
     } 

    </table> 
} 

Этот что он показывает на вид: Image with names omitted Может ли кто-нибудь сказать мне, почему он это делает? Или я должен использовать другой способ сделать эту таблицу в меню вместо использования Html.Action? Благодаря (я только хочу показать таблицу и не повторять заголовок)

+0

Какая ошибка? –

+0

_ «Может кто-нибудь сказать мне, почему он это делает?» _ - что такое «это», точно? – CodeCaster

+0

@PowerStar Я хочу показать таблицу и не повторять «Программное обеспечение Gestão Pedagógica», «Bem vindo, ProfTeste» – dasdasd

ответ

2

Вы получаете свой логотип в два раз becouse вашего взгляда есть это также (что вы звоните с Html.Action), так просто установить подвид Layout в null:

@model List<SGP.Models.PessoaModel2> 
@{ 
    Layout = null; 
} 
// your other stuff 
1

Ahh ok Я вижу, в чем проблема. Вы «заголовок» повторяется.

Самый простой способ решить эту проблему, чтобы добавить:

@{ 
    Layout = null; 
} 

В любом представлении, что вы хотите, чтобы сделать только HTML внутри. Таким образом, он не будет отображать страницы макета, которые по умолчанию отображаются с представлениями.