W mojej aplikacji MVC używam następującego kodu, aby przesłać plik.
MODEL
public HttpPostedFileBase File { get; set; }
WIDOK
@Html.TextBoxFor(m => m.File, new { type = "file" })
Wszystko działa dobrze .. Ale próbuję przekonwertować wynikowy fiel na bajt [] .Jak mogę to zrobić
KONTROLER
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
Wskaźnik zerowy
źródło
źródło
model.File.InputStream.Position = 0;
przed kodem Jona, aby działałinputStream
i obie będą odnosić się do tego samego obiektu. Dlaczego miałbyś chcieć go pozbyć się dwa razy?Możesz to przeczytać ze strumienia wejściowego:
A jeśli zamierzasz bezpośrednio zapisać plik na dysku, możesz użyć tej
model.File.SaveAs
metody. Poniższy wpis na blogu może okazać się przydatny.źródło