public ActionResult UploadImage(HttpPostedFileBase uploadFile, int ArtworkID) { if (ModelState.IsValid) { if (uploadFile != null) { var artwork = db.Artworks.Find(ArtworkID); if (artwork != null) { var image = new ArtworkImage { ImageFileType = uploadFile.ContentType, ImageData = new byte[uploadFile.ContentLength], }; // TODO: das Bild auch speichern uploadFile.InputStream.Read(image.ImageData, 0, uploadFile.ContentLength); db.Images.Add(image); artwork.Images.Add(image); db.SaveChanges(); return(RedirectToAction("ImageList", new { id = artwork.ArtworkPoolId })); } } } return(View()); }
public void InitDemoPool(string homeDir) { var pool = _context.ArtworkPools.SingleOrDefault(p => p.Name.Equals("Demo")); if (pool != null) { return; } InitCatalogData(); pool = new ArtworkPool() { Name = "Demo", Description = "Demodateien", }; _context.ArtworkPools.Add(pool); _context.SaveChanges(); var lines = File.ReadAllLines(Path.Combine(homeDir, "Index.csv"), Encoding.Default); foreach (var line in lines) { var elem = line.Split(';'); var libName = elem[6]; var cpName = elem[7]; var library = _context.ArtworkLibraries.SingleOrDefault(l => l.ShortName.Equals(libName)); var copy = _context.CopyrightOwners.SingleOrDefault(c => c.ShortName.Equals(cpName)); var artwork = new Artwork() { ArtworkPoolId = pool.ArtworkPoolId, Artist = elem[1], Title = elem[2], Dating = elem[3], Technique = elem[4], Dimensions = elem[5], ArtworkLibrary = library, CopyrightOwner = copy, }; _context.Artworks.Add(artwork); var imageFile = Path.Combine(homeDir, elem[0]); var image = new ArtworkImage { ImageFileType = "image/" + Path.GetExtension(imageFile).Remove(0, 1), Artwork = artwork, ImageData = File.ReadAllBytes(imageFile), }; _context.Images.Add(image); _context.SaveChanges(); } _context.SaveChanges(); }