user793468
user793468

Reputation: 4966

output sql with html structure

Is there a way to store the HTML structure in a SQL view and output it with the stored HTML structure via controller?

For e.g. Here is a sample HTML which I'd like to store in a SQL View and output via controller

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<IEnumerable<vwStudent>>" %>

<html>
<body>
    <table>
        <tr>
            <th>
                Student ID
            </th>
            <th>
                Name
            </th>
            <th>
                GPA
            </th>
            <th>
                Scholarship Amount
            </th>
            <th>
                Eligible Date
            </th>
            <th>
                Is Senior
            </th>
        </tr>

    <% foreach (var item in Model) { %>

        <tr>
            <td>
                <%= Html.Encode(item.StudentID) %>
            </td>
            <td>
                <%= Html.Encode(item.FName) %>
            </td>
            <td>
                <%= Html.Encode(item.GPA) %>
            </td>
            <td>
                <%= Html.Encode(String.Format("{0:F}", item.ScholarshipAmount)) %>
            </td>
            <td>
                <%= Html.Encode(String.Format("{0:g}", item.EligibleDate)) %>
            </td>
            <td>
                <%= Convert.ToString(item.IsSenior) == "True" ? "Yes" : Convert.ToString(item.IsSenior) == "False" ? "No" : null%>
            </td>   
        </tr>

    <% } %>

    </table>
    </body>
    </html>

Controller Action:

public ActionResult Students()
{
    ViewData.Model = students.vwStudent.ToList();
    return View();
}

Upvotes: 0

Views: 218

Answers (1)

Milney
Milney

Reputation: 6417

65,000 records is FAR FAR too many to render on a single page... you should use pagination. There are libraries to help with this like this one: https://www.nuget.org/packages/PagedList.Mvc/

Upvotes: 1

Related Questions