Веб-страницы Razor 2 - как сохранить выбранный параметр после обратной передачи

Итак, у меня есть эта маленькая страница cshtml в решении .NET 4.0 ASP.NET Web Pages Razor v2.

@{
    Layout = "~/_SiteLayout.cshtml";
    Page.Title = "News For All Crew";

    var db = Database.Open("ConnectionString");    
    var departmentsQry = "select Name from Info_Department_Names IPN order by Name";       
}

<form method="post" action="">
    <select id="selectStation" name="selectStation" onchange="this.form.submit();">
        @foreach (var dept in db.Query(departmentsQry))
        {
            <option value="@dept.Name">@dept.Name</option>
        }
    </select> 
</form>

Когда пользователь выбирает параметр, я бы хотел, чтобы он оставался выбранным после обратной передачи. Как мне это сделать?


person M Raymaker    schedule 02.08.2013    source источник


Ответы (1)


@foreach (var dept in db.Query(departmentsQry))
{
    <option value="@dept.Name" selected="@(dept.Name == Request["selectStation"])">@dept.Name</option>
}

Дополнительные сведения об условных атрибутах см. здесь: http://www.mikesdotnetting.com/Article/201/Cleaner-Conditional-HTML-Attributes-In-Razor-Web-Pages

person Mike Brind    schedule 02.08.2013