public static NSpot ProcessNSpotPhoto(Member member, NSpot nSpot, Image image) { Database db = DatabaseFactory.CreateDatabase(); DbConnection conn = db.CreateConnection(); DbTransaction Transaction = null; try { conn.Open(); Transaction = conn.BeginTransaction(); string GlobalWebID = UniqueID.NewWebID(); string FileName = GlobalWebID + @".jpg"; // create the large photo // just store the large image.. dont make a resource record System.Drawing.Image MainImage = Photo.Resize480x480(image); string Savepath = member.NickName + @"\" + "nslrge" + @"\" + FileName; Photo.SaveToDisk(MainImage, Savepath); //create the medium ResourceFile PhotoResourceFile = new ResourceFile(); PhotoResourceFile.CreatedDT = DateTime.Now; PhotoResourceFile.WebResourceFileID = GlobalWebID; PhotoResourceFile.ResourceType = (int)ResourceFileType.NspotPhoto; PhotoResourceFile.Path = member.NickName + "/" + "nsmed" + "/"; PhotoResourceFile.FileName = FileName; PhotoResourceFile.Save(db); System.Drawing.Image MediumImage = Photo.Resize190x130(MainImage); Photo.SaveToDisk(MediumImage, PhotoResourceFile.SavePath); //create the thumbnail ResourceFile ThumbnailResourceFile = new ResourceFile(); ThumbnailResourceFile.CreatedDT = DateTime.Now; ThumbnailResourceFile.WebResourceFileID = GlobalWebID; ThumbnailResourceFile.ResourceType = (int)ResourceFileType.NspotThumbnail; ThumbnailResourceFile.Path = member.NickName + "/" + "nsthmb" + "/"; ThumbnailResourceFile.FileName = FileName; ThumbnailResourceFile.Save(db); System.Drawing.Image ThumbnailImage = Photo.ResizeTo124x91(MediumImage); Photo.SaveToDisk(ThumbnailImage, ThumbnailResourceFile.SavePath); // attached the resource ids to the photos nSpot.ThumbnailResourceFileID = ThumbnailResourceFile.ResourceFileID; nSpot.PhotoResourceFileID = PhotoResourceFile.ResourceFileID; nSpot.Save(db); Transaction.Commit(); } catch (Exception ex) { Transaction.Rollback(); throw ex; } finally { conn.Close(); } return(nSpot); }