Wenn Sie diese Datei index.htm im Browser machen, dann können Sie Controller-Aktion wie folgt erstellen:
public void GetHtml()
{
var encoding = new System.Text.UTF8Encoding();
var htm = System.IO.File.ReadAllText(Server.MapPath("/Solution/Html/") + "index.htm", encoding);
byte[] data = encoding.GetBytes(htm);
Response.OutputStream.Write(data, 0, data.Length);
Response.OutputStream.Flush();
}
oder nur von:
public ActionResult GetHtml()
{
return File(Server.MapPath("/Solution/Html/") + "index.htm", "text/html");
}
können also sagen, diese Aktion in Startseite Controller und einige Benutzer trifft http://yoursite.com/Home/GetHtml dann index.htm gemacht werden.
EDIT: 2 andere Methoden
Wenn Sie rohe html von index.htm im Browser sehen möchten:
public ActionResult GetHtml()
{
Response.AddHeader("Content-Disposition", new System.Net.Mime.ContentDisposition { Inline = true, FileName = "index.htm"}.ToString());
return File(Server.MapPath("/Solution/Html/") + "index.htm", "text/plain");
}
Wenn Sie wollen einfach nur Datei herunterladen:
public FilePathResult GetHtml()
{
return File(Server.MapPath("/Solution/Html/") + "index.htm", "text/html", "index.htm");
}
'Server.MapPath' ist nicht erforderlich. Versuchen Sie 'return File (" ~/Html/index.htm "," text/html ");' –
Welche Bibliothek benötigen Sie, um 'File()' zu verwenden? –