Я хочу построить частичный вид, который получает колонку модели и печатает ее. Нечто подобное:asp.net mvc - передать частичную модель данных в частичный вид
На взгляд:
@model IEnumerable<products_comparison.Models.Product>
@{
ViewBag.Title = "Index";
var Brand = (from r in Model
select r.Brand).Distinct();
}
<h2>
Index</h2>
@Html.RenderPartial("_DisplayAttribute",Brand)
И на частичный вид:
<table>
<tr>
<th>
Brand
</th>
</tr>
@foreach (var row in Model)
{
<tr>
<td>
@Html.DisplayFor(r => row)
</td>
</tr>
}
</table>
Есть несколько проблем, я бегу в:
- компилятор не позволяет мне отправить Барнда на частичный вид.
- Если вы посмотрите на код частичного просмотра, вы увидите слово Brand, которое является именем столбца. Я не хочу жестко закодировать слово «Бренд» в частичном представлении, вместо этого мне нравится, что имя столбца будет там.
- В частичном представлении мне нужно поставить @model products_comparison.Models.Product, но я не хочу хочу отправить таблицу отверстий. Я хочу отправить только одну колонку. Но я не знаю, что там положить.
Спасибо!
EDIT:
Просто, чтобы очистить одну вещь, я хочу, чтобы вид будет вызывать тот же частичный вид для каждого столбца в таблице (для большинства из столбцов в таблице в любом случае), и каждый раз, когда я буду отправьте другой столбец (точнее, столбец с разными значениями).
Вашего ответ 1 установил его .. И я изменить мой вопрос .. – Nir
спасибо! Ваш ответ классный! –
@Nir Это обычно полезно, если вы принимаете ответ, который вам помог. (Пожалуйста, спасибо.) –