2015-01-11 2 views
0

У меня нет идей, но я думаю, это потому, что я ноб в asp.net. У меня есть проект MVC3 и моя идея состояла в том, чтобы иметь 2 секции:Отображение одной записи в asp.net для представления _layout.cshtml

enter image description here

Раздел Main предназначен для отображения таблицы и новости, и весь персонал, который изменяется при вводе различных страниц. Раздел Main_profile предназначен для отображения информации профиля (имя, адрес электронной почты и т. Д.) Для текущего пользователя. Вот проблема. Я знаю, что мне нужно поместить код для отображения Main_profile в _Layout.cshtml, так как я хочу, чтобы эта информация отображалась все время. Я попытался это:

<section id="main_profile"> 
     @Html.Action("Profile", "Person", new { name = User.Identity.Name }) 
    </section> 

Профиль является метод в моем PersonController, который выглядит следующим образом:

public ViewResult Profile(string name) 
    { 
     string person_n = name; 
     return View(db.Persons.Where(s => s.Username.Equals(person_n))); 
    } 

В конце концов, есть вид для профиля:

@model IEnumerable<Bachelor.Models.Person> 
<h2>Your profile</h2> 
<table border = "1"> 
<tr> 
    <th> 
     Username 
    </th> 
    <th> 
     Birthday 
    </th> 
    <th> 
     Education 
    </th> 
    <th> 
     Email 
    </th> 
</tr> 
@foreach (var item in Model) { 
<tr> 
    <td> 
     @Html.DisplayFor(modelItem => item.Username) 
    </td> 
    <td> 
     @Html.DisplayFor(modelItem => item.Birthday) 
    </td> 
    <td> 
     @Html.DisplayFor(modelItem => item.Education) 
    </td> 
    <td> 
     @Html.DisplayFor(modelItem => item.Email) 
    </td> 
</tr> 

Но я получаю это «Необработанное исключение типа« System.StackOverflowException »произошло в Неизвестном модуле».

Не знаю, может ли это иметь какое-то отношение к нему, но в главном разделе на некоторых страницах отображается таблица записей. Что я здесь делаю неправильно?

+0

Ничего общего с Классическим ASP. – Paul

ответ

0

Задайте Layout нулевым цветом в частичном. Что происходит, рекурсивно называют себя:

@{ Layout = null; } 
Смежные вопросы