In meiner MVC-Anwendung verwende ich den folgenden Code, um eine Datei hochzuladen.
MODELL
public HttpPostedFileBase File { get; set; }
AUSSICHT
@Html.TextBoxFor(m => m.File, new { type = "file" })
Alles funktioniert gut. Aber ich versuche, das Ergebnisfeld in Byte [] umzuwandeln. Wie kann ich das tun?
REGLER
public ActionResult ManagePhotos(ManagePhotos model)
{
if (ModelState.IsValid)
{
byte[] image = model.File; //Its not working .How can convert this to byte array
}
}
arrays
image
asp.net-mvc-3
Null Zeiger
quelle
quelle
model.File.InputStream.Position = 0;
vor Jons Code hinzufügen , damit es funktioniertinputStream
, und beide beziehen sich auf dasselbe Objekt. Warum sollten Sie es zweimal entsorgen wollen?Sie können es aus dem Eingabestream lesen:
Wenn Sie die Datei direkt auf der Festplatte speichern möchten, können Sie die
model.File.SaveAs
Methode verwenden. Der folgende Blog-Beitrag ist möglicherweise hilfreich.quelle