Verwenden Sie razor / asp.net mvc3, um statische HTML-Seiten zu generieren?

Für ein Projekt muss ich statische HTML-Seiten generieren, die auf einem Remote-Server veröffentlicht werden sollen.

Ich muss die Erstellung dieser Dateien aus einem C # -Code automatisieren, der Daten aus einer SQL Server-Datenbank entnimmt.

Die Daten werden nicht oft geändert (alle 4-5 Monate), und diese Website wird stark frequentiert.

Da ich die Rasiermessersynthax von asp.net MVC3 für sehr effektiv halte, habe ich mich gefragt, ob es möglich ist, asp.net MVC3 / Razor zum Generieren dieser HTML-Seiten zu verwenden.

So:

Ist das eine gute Idee?Wenn ja, wie geht das?Wenn Sie auf eine andere gute Weise darüber nachdenken, auf welche Weise?

Danke für die Hilfe

Bearbeiten

In Bezug auf die Antworten muss ich eine Genauigkeit festlegen: Ich möchte / muss aus vielen Gründen kein Web-Caching verwenden (Laden (Millionen von Seiten werden jeden Monat geladen), Integration (wir integrieren unsere Seite in einen optimierten Apache mit, ein anderer Teil einer Website), Anzahl der Seiten (Caching hilft mir nur, wenn ich die gleichen Seiten viel Zeit habe, aber ich werde ~ 2500 Seiten haben, also nach Murphys Gesetz, außer wenn ich ein sehr hohes Cache-Timeout einsetze Ich muss sie oft generieren.) Also suche ich wirklich etwas, um HTML-Seiten zu generieren.

Bearbeiten 2 Ich habe gerade eine neue Einschränkung erhalten: / Diese Vorlage muss lokalisiert werden. Das heißt, ich sollte etwas haben, das dem folgenden Rasiermesser-Code entspricht:@MyLocalizationFile.My.MyValue

Bearbeiten 3 Derzeit denke ich daran, eine dynamische Website zu erstellen und eine http-Abfrage aufzurufen, um den generierten HTML-Code zu speichern. ABER, gibt es eine Möglichkeit, das http zu vermeiden? Das heißt, Sie simulieren einen http-Aufruf, geben den Ausgabestream und die aufgerufene URL an (nur bei GET-Aufruf).

Unsere vorherigen Ladezahlen wurden wirklich unterschätzt, tatsächlich haben sie jeden Tag etwas mehr als eine Million Besucher, ~ 14 Millionen Seiten pro Tag.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage