Я бы выбрал использование строго типизированного View.Создайте модель представления, содержащую вашу модель, и используйте эту модель представления для строго типизированного представления.
Модель домена и модель представления (упрощенная версия)
public class YourModel
{
string Category { get ; set ; }
}
public class YourViewModel
{
public List<string> PossibleCategories { get ; set ; }
public YourModel YourData { get ; set ; }
}
Затем представление:
@model YourViewModel
@{
foreach (string CurrCategory in Model.PossibleCategories)
{
if (Model.YourData.Category == CurrCategory)
{
@Html.CheckBox(CurrCategory, new { @checked = "checked" })
@Html.Encode(CurrCategory) <br />
}
else
{
@Html.CheckBox(CurrCategory, false)
@Html.Encode(CurrCategory) <br />
}
}
}