sql >> Base de Datos >  >> RDS >> Sqlserver

Almacene el archivo en la base de datos de SQL Server usando .Net MVC3 con Entity Framework

Aquí hay algunos "códigos de muestra";) Omití un montón de declaraciones, validación, etc., por lo que el código no se ejecutará como está, pero debería poder hacerse una idea. Use la solicitud de tipo ajax para enviar su formulario de archivo si no desea actualizar la página.

// model
public class UploadedImage
{
    public int UploadedImageID { get; set; }
    public string ContentType { get; set; }
    public byte[] File { get; set; }
}

// controller
public ActionResult Create()
{
    HttpPostedFileBase file = Request.Files["ImageFile"];

    if (file.ContentLength != 0)
    {
        UploadedImage img = new UploadedImage();
        img.ContentType = file.ContentType;
        img.File = new byte[file.ContentLength];

        file.InputStream.Read(img.File, 0, file.ContentLength);

        db.UploadedImages.Add(img);
        db.SaveChanges();
    }

    return View();
}

ActionResult Show(int id) 
{
    var image = db.UploadedImages.Find(id);
    if (image != null)
    {
        return File(image.File, image.ContentType, "filename goes here");
    }
}