Есть ли способ создать @section необязателен для asp.net mvc Razor ViewEngine?

У меня есть Page.cshtml, похожий на следующий (который не работает):

@{
    Layout = "../Shared/Layouts/_Layout.cshtml";
    var mycollection = (ViewBag.TheCollection as IQueryable<MyCollectionType>);
}

<h2>@ViewBag.Title</h2>

content here

@if (mycollection != null && mycollection.Count() > 0)
{    
    @section ContentRight
    {    
        <h2>
            Stuff
        </h2>
        <ul class="stuff">
            @foreach (MyCollectionType item in mycollection )
            {
                <li class="stuff-item">@item.Name</li>
            }
        </ul>
    }
}

Как я уже сказал, это не работает. Я не хочу определять раздел, если в коллекции ничего нет. Есть ли способ получить что-то подобное? Если нет, то каковы другие варианты? Я новичок в этой Razor ViewEngine.

Edit

В моем макете:

@if(IsSectionDefined("ContentRight")) 
{
    <div class="right">
        RenderSection("ContentRight")
    </div>
}

я не хочу, чтобы div выводился, когда раздел пуст.

7
задан tereško 29 June 2012 в 00:26
поделиться