Как отобразить данные в asp.net MVC 2? - PullRequest
0 голосов
/ 25 октября 2010

Я выполняю динамически построенный оператор SQL и помещаю результаты в таблицу данных.Затем мне нужно отобразить эти результаты в виде таблицы в частичном представлении.Обычно я создаю объект List <> и строго набираю его на странице, но в этом случае я не знаю, каким будет конечный sql, поскольку он создается пользователем во время выполнения.Как я могу отобразить данные в DataTable, когда я не знаю, что в них?Кроме того, есть ли лучший способ сделать это, чем в datatable?

Спасибо

1 Ответ

1 голос
/ 25 октября 2010

Поскольку вы отображаете табличные данные, вы должны использовать HTML-таблицу для выполнения этой работы. Ответ Увольнения отображает только один столбец таблицы. Более общий ответ можно найти в следующем вопросе SO:

Отображение стандартных таблиц данных в MVC

Вас беспокоит то, что модель строго типизирована как DataTable:

<table border="1">
    <thead>
        <tr>
            <%foreach (System.Data.DataColumn col in Model.Columns) { %>
                <th><%: col.Caption %></th>
            <%} %>
        </tr>
    </thead>
    <tbody>
    <% foreach(System.Data.DataRow row in Model.Rows) { %>
        <tr>
            <% foreach (var cell in row.ItemArray) {%>
                <td><%: cell.ToString() %></td>
            <%} %>
        </tr>
    <%} %>         
    </tbody>
</table>

EDIT

Отредактировано для кодирования содержимого таблицы данных. Что касается использования mvc 2 (в соответствии с тегом), то Html.Encode не требуется, только запись <%:, которая доступна в mvc 2. </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...