2017-04-20 8 views
0

Gibt es eine Möglichkeit, die HTML-Struktur in einer SQL-Ansicht zu speichern und mit der gespeicherten HTML-Struktur über Controller ausgeben?Ausgabe sql mit HTML-Struktur

Für z.B. Hier ist ein Beispiel HTML, die ich in einer SQL-Ansicht speichern möchte und Ausgang über die Steuerung

<%@ 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 Aktion:

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

Warum möchten Sie den HTML-Code in einer SQL-Tabelle speichern? Sie sollten Daten und HTML getrennt in Ihrer Anwendung aufbewahren - das ist im wahrsten Sinne des Wortes MVC! – Milney

+0

Sie speichern die Daten (dh die Felder wie StudentId) in der Datenbank, und dann Ihre Ansicht (die cshtml-Datei von asp.net mvc) rendert es in HTML-Format. – Milney

+0

@Milney Ich versuche, ein Leistungsproblem zu lösen, die Datenbankabfrage wird in weniger als 10 Sekunden ausgeführt, während die HTML-Ansicht mehr als 5 Minuten für die Ausgabe benötigt. Ich versuche, die Ansicht schneller zu machen – user793468

Antwort