Heim >Backend-Entwicklung >C++ >So steuern Sie die Dateianzeige (Anzeigen oder Download) in ASP.NET MVC?
Steuern von Dateianzeigeoptionen (Anzeigen oder Download) in ASP.NET MVC
ASP.NET -MVC -Anwendungen müssen häufig Dateien bereitstellen, die in einer Datenbank für Benutzer gespeichert sind. Eine wichtige Herausforderung besteht darin, den Benutzern die Kontrolle darüber zu geben, wie diese Dateien behandelt werden - unabhängig davon, ob sie direkt im Browser angezeigt oder heruntergeladen werden.
Während FileResult
eine einfache Lösung bietet, kann sie für unbekannte Dateitypen unzuverlässig sein, die häufig zu einem Download versiegt werden. Um eine robustere Kontrolle zu erhalten, sollten Sie FileStreamResult
oder die ContentDisposition
-Header manipulieren.
FileStreamResult
Verwenden
<code class="language-csharp">// Opens known types, downloads unknown types (incorrect filename/extension) return new FileStreamResult(new MemoryStream(document.Data), document.ContentType);</code>
File
, um einen Download konsistent zu erzwingen, unabhängig vom Dateityp, verwenden Sie die ContentDisposition
-Methode mit einem angepassten
<code class="language-csharp">public ActionResult Download() { var document = ...; var cd = new System.Net.Mime.ContentDisposition { FileName = document.FileName, Inline = false, // Forces download }; Response.AppendHeader("Content-Disposition", cd.ToString()); return File(document.Data, document.ContentType); }</code>
ContentDispositionHeaderValue
Für eine verbesserte internationale Charakterunterstützung wird die
<code class="language-csharp">public IActionResult Download() { var document = ...; var cd = new ContentDispositionHeaderValue("attachment") { FileNameStar = document.FileName // Use FileNameStar for better encoding }; Response.Headers.Add(HeaderNames.ContentDisposition, cd.ToString()); return File(document.Data, document.ContentType); }</code>
Mit diesen Methoden können Entwickler die Dateizustellung genau verwalten und eine konsistente und vorhersehbare Benutzererfahrung sicherstellen, ob der Benutzer die Datei anzeigen oder herunterladen will.
Das obige ist der detaillierte Inhalt vonSo steuern Sie die Dateianzeige (Anzeigen oder Download) in ASP.NET MVC?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!