public IEnumerator StoreImages(Dictionary <string, string> images) { yield return(ImageStorage.Store(images)); }
private void addToStorage(Point p, Color c) { ImageStorage.Add(p, c); }
public IEnumerator StoreImage(string name, string url) { yield return(ImageStorage.Store(name, url)); }
protected void btnUpload_ServerClick(object sender, EventArgs e) { if (this.t_Date.Text.Trim() == string.Empty) { this.ShowMessage(this, "请选择时间"); return; } else { if (Convert.ToDateTime(this.t_Date.Text) > DateTime.Now) { this.ShowMessage(this, "拍摄时间应比现在早"); return; } } //验证日期 DateTime sDate = new DateTime(); DateTime eDate = new DateTime(); if (this.Calendar_StartDate.Text != "") { sDate = Convert.ToDateTime(this.Calendar_StartDate.Text); if (sDate <= DateTime.Now) { this.ShowMessage(this, "有效开始日期应比现在日期晚"); return; } } else { sDate = Convert.ToDateTime("1900-01-01"); } if (this.Calendar_EndDate.Text != "") { eDate = Convert.ToDateTime(this.Calendar_EndDate.Text); if (sDate == Convert.ToDateTime("1900-01-01") && eDate < DateTime.Now) { this.ShowMessage(this, "有效结束日期应至少比现在日期晚"); return; } else if (eDate < sDate) { this.ShowMessage(this, "有效结束日期应比有效开始日期晚"); return; } } else { eDate = Convert.ToDateTime("1900-01-01"); } //根节点 TreeNode parentNode = catalogTree.RootNode; //获取checked的节点List ArrayList nodeList = new ArrayList(); this.catalogTree.ArrCheckbox(nodeList, parentNode); ArrayList catalogIds = new ArrayList(nodeList.Count); foreach (TreeNode node in nodeList) { catalogIds.Add(new Guid(node.Value)); } if (catalogIds.Count == 0) { this.ShowMessage(this, "没有选择分类,上传失败!"); return; } ImageStorage img = new ImageStorage(); string fileName = ""; //原始文件名 if (!string.IsNullOrEmpty(Request["selectedFile"])) { fileName = Request["selectedFile"].ToString(); } string uploadFileName = ""; //上传以后重新分配的文件名 prefix+yymmdd+00001.extention if (!string.IsNullOrEmpty(Request["uploadFileName"])) { uploadFileName = Request["uploadFileName"].ToString(); } VideoStorageClass vsc = new VideoStorageClass(); VideoStorage v = new VideoStorage(); v.Caption = this.txt_Caption.Value; v.Description = this.description.Value; v.EndDate = eDate; v.FileName = fileName; v.FolderName = CurrentUser.UserLoginName; v.ServerFileName = uploadFileName; v.GroupId = CurrentUser.UserGroupId; v.ItemId = Guid.NewGuid(); v.ItemSerialNum = Path.GetFileNameWithoutExtension(uploadFileName); v.Keyword = this.keyWord.Value; v.shotDate = Convert.ToDateTime(this.t_Date.Text); v.StartDate = sDate; v.uploadDate = DateTime.Now; v.userId = CurrentUser.UserId; v.updateDate = DateTime.Now; //存储数据库记录 // img.ItemSerialNum = ImageStorageClass.AddImageStorage(img); if (!vsc.Add(v)) { this.ShowMessage(this, "上传失败"); return; } vsc.CreateRelationshipVideoAndCatalog(v.ItemId, (Guid[])catalogIds.ToArray(typeof(Guid))); this.t_Date.Text = ""; //this.imageType.Value = ""; this.keyWord.Value = ""; this.description.Value = ""; //this.txt_Address.Value = ""; this.txt_Caption.Value = ""; //this.txt_Character.Value = ""; this.Calendar_StartDate.Text = ""; this.Calendar_EndDate.Text = ""; initCalendar(); this.ShowMessage(this, "上传成功"); //调用一下处理程序,不用等待处理结果 //VideoController vc = new VideoController(); //vc.runExe(ConfigurationManager.AppSettings["VideoEngineConsolePath"].ToString()); }
public ImageController(ImageStorage imageStorage, ImageAnalysisStore imageAnalysisStore) { this.imageStorage = imageStorage; this.imageAnalysisStore = imageAnalysisStore; }
private async Task <bool> ProcessMsg(string xml, bool returnImage) { MsgObject msg = new MsgObject(xml); if (msg.MsgType != "image") { string resString = "请点+号输入一张人物风景照片试试"; Response.Write(string.Format("<xml><ToUserName><![CDATA[{0}]]></ToUserName><FromUserName><![CDATA[{1}]]></FromUserName><CreateTime>12345678</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[{2}]]></Content></xml>", msg.FromUserName, msg.ToUserName, resString)); Response.End(); return(false); } bool isDebug = false; if (isDebug) { string debugString = msg.PicUrl; Response.Write(string.Format("<xml><ToUserName><![CDATA[{0}]]></ToUserName><FromUserName><![CDATA[{1}]]></FromUserName><CreateTime>12345678</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[{2}]]></Content></xml>", msg.FromUserName, msg.ToUserName, msg.PicUrl)); Response.End(); return(false); } //string imagePathorUrl = msg.PicUrl; //string imagePathorUrl = msg.PicUrl.Replace("https://", "").Replace("http://", ""); //var ret = vision.AnalyzeImage(msg.PicUrl); RichResult ret = null; //ret = vision.AnalyzeImage(msg.PicUrl); VisionHelper vision = new VisionHelper(GetVisionAPIkey(), fontPath, DateTime.Now, fontPath); var task = QuickReturn(vision, msg); //md5 = GetMd5(msg.PicUrl); md5 = GetMd5(msg.PicUrl + msg.CreateTime.ToString()); //check data from db using (var dbContext = new WeixinDBContext()) { //ImageStorage image = dbContext.ImageStorages.FirstOrDefault(p => p.OpenId == msg.FromUserName && p.PicUrl == msg.PicUrl && p.CreateTime == msg.CreateTime); //ImageStorage image = dbContext.ImageStorages.FirstOrDefault(p => p.PicUrl == msg.PicUrl); //ImageStorage image = dbContext.ImageStorages.FirstOrDefault(p => p.PicUrl == msg.PicUrl && p.CreateTime == msg.CreateTime); //ImageStorage image = dbContext.ImageStorages.FirstOrDefault(p => p.Md5 == md5 && p.CreateTime == msg.CreateTime); ImageStorage image = dbContext.ImageStorages.FirstOrDefault(p => p.Md5 == md5); if (image != null) { Response.Write(string.Format("<xml><ToUserName><![CDATA[{0}]]></ToUserName><FromUserName><![CDATA[{1}]]></FromUserName><CreateTime>12345678</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[{2}]]></Content><DebugInfo><![CDATA[{3}]]></DebugInfo><ErrorInfo><![CDATA[{4}]]></ErrorInfo></xml>", msg.FromUserName, msg.ToUserName, image.ParsedDescription, image.TimeLog, md5)); Response.End(); return(true); } dbContext.Dispose(); } ret = await task; //when not results in DB and got error if (!ret.errorLogs.Equals("")) { //Response.Write(string.Format("<xml><ToUserName><![CDATA[{0}]]></ToUserName><FromUserName><![CDATA[{1}]]></FromUserName><CreateTime>12345678</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[{2}]]></Content></xml>", // msg.FromUserName, msg.ToUserName, "机器人很忙,请稍后再试")); Response.Write(string.Format("<xml><ToUserName><![CDATA[{0}]]></ToUserName><FromUserName><![CDATA[{1}]]></FromUserName><CreateTime>12345678</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[{2}]]></Content><DebugInfo><![CDATA[{3}]]></DebugInfo><ErrorInfo><![CDATA[{4}]]></ErrorInfo></xml>", msg.FromUserName, msg.ToUserName, ret.analyzeImageResult, ret.timeLogs, ret.errorLogs)); Response.End(); } //// Debug mode //Response.Write(string.Format("<xml><ToUserName><![CDATA[{0}]]></ToUserName><FromUserName><![CDATA[{1}]]></FromUserName><CreateTime>12345678</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[{2}]]></Content><DebugInfo><![CDATA[{3}]]></DebugInfo><ErrorInfo><![CDATA[{4}]]></ErrorInfo></xml>", // msg.FromUserName, msg.ToUserName, ret.analyzeImageResult, ret.timeLogs, ret.errorLogs)); // Production mode //Response.Write(string.Format("<xml><ToUserName><![CDATA[{0}]]></ToUserName><FromUserName><![CDATA[{1}]]></FromUserName><CreateTime>12345678</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[{2}]]></Content></xml>", msg.FromUserName, msg.ToUserName, ret.analyzeImageResult)); //Response.End(); //save db first without parsedContent int id = -1; using (var dbContext = new WeixinDBContext()) { ImageStorage image = new ImageStorage(); image.OpenId = msg.FromUserName; image.CreateTime = msg.CreateTime; image.PicUrl = msg.PicUrl; image.Md5 = GetMd5(msg.PicUrl + msg.CreateTime.ToString() + ret.errorLogs); //image.PicContent = ret.rawImage; image.ParsedUrl = ret.uploadedUrl; image.ParsedDescription = ret.analyzeImageResult + ret.errorLogs; image.TimeLog = ret.timeLogs; dbContext.ImageStorages.Add(image); dbContext.SaveChanges(); id = image.Id; dbContext.Dispose(); } //write to DB //var webClient = new WebClient(); //var processedImageBytes = webClient.DownloadData(ret.uploadedUrl); //using (var dbContext = new WeixinDBContext()) //{ // ImageStorage image = dbContext.ImageStorages.FirstOrDefault(p => p.Id == id); // if (image != null) // { // image.ParsedContent = processedImageBytes; // dbContext.SaveChanges(); // } //} return(true); }
string[] GetImages(string value) => value.Select(p => ImageStorage.FetchPng(p.ToString())).ToArray();
private static void StrategySection() { var storage = new ImageStorage(new PngCompressor(), new BestFilterInTheWorld()); storage.SavePhoto("asas"); }
private string UploadImage() { ImageStorage img = new ImageStorage(); //string uploadvalue = this.ImageUpload.Value.Trim(); string fileName = fuImage.FileName; //获取上传文件的全路径 //uploadvalue.Substring(uploadvalue.Trim().LastIndexOf(@"\") + 1);//得到文件 #region 组织数据 img.ImageType = System.IO.Path.GetExtension(fileName).ToLower(); //获取扩展名 img.FileName = System.IO.Path.GetFileName(fileName); //实际文件名称 img.Keyword = this.txtTitle.Text.Trim(); img.Description = this.txtRemark.Text.Trim(); img.shotDate = DateTime.Now; img.StartDate = DateTime.Now; img.EndDate = DateTime.Now.AddYears(5); img.Caption = this.txtTitle.Text.Trim(); img.FolderName = CurrentUser.UserLoginName; img.userId = CurrentUser.UserId; img.ItemId = Guid.NewGuid(); img.ItemSerialNum = ImageStorageClass.GetImageSeq(DateTime.Now); img.GroupId = CurrentUser.UserGroupId; img.uploadDate = DateTime.Now; img.FileSize = this.fuImage.PostedFile.ContentLength; #endregion //modify by dtf 08-06-16 (png,psd,ai) System.Drawing.Image m_Image = null; if (this.CheckImageType(img.ImageType))// is image format { if (img.ImageType == "ai") { img.Hvsp = "s"; } else { // m_Image = System.Drawing.Image.FromFile(fileName); m_Image = System.Drawing.Image.FromStream(this.fuImage.PostedFile.InputStream); Int32 height = Convert.ToInt32(m_Image.Height.ToString()); Int32 width = Convert.ToInt32(m_Image.Width.ToString()); if (height > width) { img.Hvsp = "v"; } else if (width > height) { img.Hvsp = "h"; } else { img.Hvsp = "s"; } } } else { img.Hvsp = string.Empty; } //存储数据库记录 // img.ItemSerialNum = ImageStorageClass.AddImageStorage(img); string s = ImageStorageClass.AddImageStorage(img); if (s == null) { this.ShowMessage(this, "上传失败"); } //准能压缩文件 try { if (!this.CheckImageType(img.ImageType) || img.ImageType == "ai") { uploadFile(img);//存储普通文件 } else { saveImage(m_Image, img);//将imageID与catalogID保存到ImageStorage_Catalog表 } } catch (Exception ex) { LogWriter.WriteExceptionLog(ex); this.ShowMessage(this, "上传失败"); return(null); } finally { if (m_Image != null) { m_Image.Dispose(); } } return(img.ItemId.ToString()); }
void drawWindow(BasePlayer player) { IOrderedEnumerable <KeyValuePair <ulong, PlayerData> > items = from pair in data orderby pair.Value.pvp.kills descending select pair; int i = 1; string topPvp = " Убийства:\n\n"; foreach (KeyValuePair <ulong, PlayerData> pair in items) { string name = pair.Value.name; if (name == null) { name = "Неизвестный"; } topPvp = topPvp + i.ToString() + ") " + name + " - " + pair.Value.pvp.kills.ToString() + "\n"; i++; if (i > 5) { break; } } items = from pair in data orderby pair.Value.pvp.deaths descending select pair; i = 1; topPvp = topPvp + "\n Смерти:\n\n"; foreach (KeyValuePair <ulong, PlayerData> pair in items) { string name = pair.Value.name; if (name == null) { name = "Неизвестный"; } topPvp = topPvp + i.ToString() + ") " + name + " - " + pair.Value.pvp.deaths.ToString() + "\n"; i++; if (i > 5) { break; } } items = from pair in data orderby pair.Value.pvp.duelWin descending select pair; i = 1; /*topPvp = topPvp + "\n Победы в дуэлях:\n\n"; * foreach(KeyValuePair<ulong, PlayerData> pair in items) * { * string name = pair.Value.name; * if(name == null) name = "Неизвестный"; * topPvp = topPvp + i.ToString() + ") " + name + " - " + pair.Value.pvp.duelWin.ToString() + "\n"; * i++; * if(i > 5) break; * }*/ items = from pair in data orderby(pair.Value.gather.wood + pair.Value.gather.stone + pair.Value.gather.metalOre + pair.Value.gather.sulfurOre + pair.Value.gather.hqmetalOre) descending select pair; i = 1; string topPve = "* Добыча\n\n Руками:\n\n"; foreach (KeyValuePair <ulong, PlayerData> pair in items) { string name = pair.Value.name; if (name == null) { name = "Неизвестный"; } topPve = topPve + i.ToString() + ") " + name + " - " + (pair.Value.gather.wood + pair.Value.gather.stone + pair.Value.gather.metalOre + pair.Value.gather.sulfurOre + pair.Value.gather.hqmetalOre).ToString() + "\n"; i++; if (i > 5) { break; } } items = from pair in data orderby(pair.Value.quarry.stone + pair.Value.quarry.metal + pair.Value.quarry.metalOre + pair.Value.quarry.sulfurOre + pair.Value.quarry.hqmetal + pair.Value.quarry.hqmetalOre) descending select pair; i = 1; topPve = topPve + "\n Карьер:\n\n"; foreach (KeyValuePair <ulong, PlayerData> pair in items) { string name = pair.Value.name; if (name == null) { name = "Неизвестный"; } topPve = topPve + i.ToString() + ") " + name + " - " + (pair.Value.quarry.stone + pair.Value.quarry.metal + pair.Value.quarry.metalOre + pair.Value.quarry.sulfurOre + pair.Value.quarry.hqmetal + pair.Value.quarry.hqmetalOre).ToString() + "\n"; i++; if (i > 5) { break; } } items = from pair in data orderby pair.Value.minutes descending select pair; i = 1; string topTime = "\n\n * Время на сервере:\n\n"; foreach (KeyValuePair <ulong, PlayerData> pair in items) { string name = pair.Value.name; if (name == null) { name = "Неизвестный"; } topTime = topTime + i.ToString() + ") " + name + " - " + prettyTime(pair.Value.minutes) + "\n"; i++; if (i > 5) { break; } } string text = data[player.userID].name + "\n\n * PvP\n Убийств: " + data[player.userID].pvp.kills.ToString() + "\n Смертей: " + data[player.userID].pvp.deaths.ToString() + "\n Побед в дуэли: " + data[player.userID].pvp.duelWin.ToString() + "\n\n * Добыто руками (" + (data[player.userID].gather.wood + data[player.userID].gather.stone + data[player.userID].gather.sulfurOre + data[player.userID].gather.metalOre + data[player.userID].gather.hqmetalOre).ToString() + ")\n Дерево: " + data[player.userID].gather.wood.ToString() + "\n Камень: " + data[player.userID].gather.stone.ToString() + "\n Железная руда: " + data[player.userID].gather.metalOre.ToString() + "\n Серная руда: " + data[player.userID].gather.sulfurOre.ToString() + "\n Мет. выс. к-ва: " + data[player.userID].gather.hqmetalOre.ToString() + "\n\n * Добыто карьером (" + (data[player.userID].quarry.stone + data[player.userID].quarry.metal + data[player.userID].quarry.metalOre + data[player.userID].quarry.sulfurOre + data[player.userID].quarry.hqmetal + data[player.userID].quarry.hqmetalOre).ToString() + ")\n Камень: " + data[player.userID].quarry.stone.ToString() + "\n Железная руда: " + data[player.userID].quarry.metalOre.ToString() + "\n Железо: " + data[player.userID].quarry.metal.ToString() + "\n Серная руда: " + data[player.userID].quarry.sulfurOre.ToString() + "\n Мет. руда высок. к-ва: " + data[player.userID].quarry.hqmetalOre.ToString() + "\n Мет. высок. к-ва: " + data[player.userID].quarry.hqmetal.ToString() + "\n\n " /*+"\n\n * Подобрал с земли\n Дерево: "+data[player.userID].pickup.wood.ToString()+"\n Камень: "+ * data[player.userID].pickup.stone.ToString()+"\n Железная руда: "+data[player.userID].pickup.metalOre+"\n Серная руда: "+data[player.userID].pickup.sulfurOre+ * "\n Ткань: "+data[player.userID].pickup.cloth*/; CuiHelper.DestroyUi(player, "StatsParent"); startGui[player.userID] = CuiHelper.GetGuid(); cui.createparentcurs("StatsParent", "0 0 0 0", "0.05 0.1", "0.95 0.95"); cui.createimg("StatImg", "StatsParent", ImageStorage.FetchPng("stat"), "0 0", "1 1"); cui.createtext("Text", "StatsParent", "", 24, "0.5 0.9", "0.8 0.99", TextAnchor.MiddleLeft); //cui.createbox("Box1", "StatsParent","0.3 0.6 0.3 0.5","0.02 0.05", "0.3 0.95"); cui.createtext("StatsText", "StatsParent", "<color=#81feff>" + text + "</color>", 18, "0.06 0.1", "0.27 0.95", TextAnchor.MiddleLeft); //cui.createbox("Box2", "StatsParent","0.6 0.3 0.3 0.5","0.32 0.35", "0.61 0.88"); cui.createtext("StatsTextTop", "StatsParent", "<color=#d24a43>" + topPvp + "</color>", 12, "0.36 0.36", "0.63 0.87", TextAnchor.MiddleLeft); //cui.createbox("Box3", "StatsParent","0.6 0.3 0.3 0.5","0.62 0.35", "0.99 0.88"); cui.createtext("StatsTextTop", "StatsParent", "<color=#74b65f>" + topPve /*+topExp*/ + topTime + "</color>", 15, "0.6499 0.02", "0.9999 0.87", TextAnchor.MiddleLeft); //cui.createbox("Box4", "StatsParent","0.6 0.3 0.3 0.5","0.62 0.05", "0.99 0.34"); //cui.createtext("StatsTextTop", "StatsParent", topExp, 18, "0.63 0.06", "0.98 0.33",TextAnchor.MiddleLeft); cui.createtext("StatsExitText", "StatsParent", "", 20, "0.32 0.18", "0.61 0.32", TextAnchor.MiddleCenter); cui.createbutton("StatsExitButton", "StatsParent", "drawTop", "StatsParent", "0 0 0 0", "0.32 0.18", "0.61 0.32"); cui.createtext("StatsExitText", "StatsParent", "", 20, "0.32 0.05", "0.61 0.15", TextAnchor.MiddleCenter); cui.createbutton("StatsExitButton", "StatsParent", "", "StatsParent", "0 0 0 0", "0.32 0.05", "0.61 0.15"); CuiHelper.AddUi(player, cui.elements); cui.elements.Clear(); }
public void Update(ImageStorage modifiedImg) { _repository.Update(modifiedImg); _unitOfWork.Save(); }
IEnumerator LoadImages() { yield return(ImageStorage.Store("stat", "http://i.imgur.com/iZUSVKg.png")); yield return(ImageStorage.Store("stat2", "http://i.imgur.com/Cyj0NZS.png")); }
public ActionResult <IDictionary <long, string> > Images() { return(ImageStorage.GetDebug()); }
//修改文件信息 protected void BtnUpdate_Click(object sender, EventArgs e) { //验证日期 DateTime sDate = new DateTime(); DateTime eDate = new DateTime(); DateTime shotDate = new DateTime(); if (this.Calendar_ShotDate.Text == "") { this.Label2.Text = "拍摄时间不能为空!"; return; } else { shotDate = Convert.ToDateTime(this.Calendar_ShotDate.Text); if (shotDate > Convert.ToDateTime(this.lb_uploadDate.Text)) { this.Label2.Text = "拍摄时间应比图片上传日期早!"; return; } } if (this.Calendar_StartDate.Text != "") { sDate = Convert.ToDateTime(this.Calendar_StartDate.Text); } else { sDate = Convert.ToDateTime("1900-01-01"); } if (this.Calendar_EndDate.Text != "") { eDate = Convert.ToDateTime(this.Calendar_EndDate.Text); if (sDate != Convert.ToDateTime("1900-01-01") && eDate < sDate) { this.Label2.Text = "有效结束日期应比有效开始日期晚"; return; } } else { eDate = Convert.ToDateTime("1900-01-01"); } ImageStorage img = new ImageStorage(); img.ItemId = new Guid(this.Hidden_ImgItemId.Value); img.Address = this.txt_Address.Text; img.Caption = this.txt_Caption.Text; img.Character = this.txt_Character.Text; img.Description = this.TxtDescription.Text; img.Keyword = this.TxtKeyword.Text; img.StartDate = sDate; img.EndDate = eDate; img.shotDate = shotDate; img.ItemSerialNum = this.lb_ItemSerialNum.Text; bool isValidate = QJVRMS.Business.ImageStorageClass.UpdateImageStorage(img); if (isValidate) { ShowMessage("修改文件信息成功!"); } else { ShowMessage("修改文件信息失败!"); } }
public ActionResult Upload(ImagesView image, HttpPostedFileBase ImageFile) { CheckAda(); String message = ""; Boolean flag = false; //System.Drawing.Image img; TryUpdateModel(image); if (ModelState.IsValid) { //HttpCookie cookie = Request.Cookies.Get("ImageSharing"); ApplicationUser userid = GetLoggedInUser(); ApplicationUser user = db.Users.SingleOrDefault(u => u.Id.Equals(userid.Id)); //if (cookie != null) //{ // image.Userid = cookie["Userid"]; // User user = db.Users.SingleOrDefault(u => u.Userid.Equals(image.Userid)); if (user != null) { /* * Save image information in the database */ //JavaScriptSerializer serializer = new JavaScriptSerializer(); //String jsonData = serializer.Serialize(image); Image imageEntity = new Image(); imageEntity.Caption = image.Caption; imageEntity.Description = image.Description; imageEntity.DateTaken = image.DateTaken; imageEntity.Userid = user.Id; //navigation property imageEntity.TagId = image.TagId; //navigation property imageEntity.Approved = false; imageEntity.Validated = false; if (ImageFile != null && ImageFile.ContentLength > 0) { if (ImageFile.ContentLength > Limit) { flag = true; message = "Image size exceed permissible values"; } //else if (ImageFile.ContentType != "image/jpeg") //{ // flag = true; // message = "File type " + ImageFile.ContentType + // " is not valid. Only supports 'jpeg'."; //} else { //try //{ // img = System.Drawing.Image.FromStream(ImageFile.InputStream); //} //catch (SystemException ex) //{ // return View("Error"); //} //if (img.RawFormat.Guid != System.Drawing.Imaging.ImageFormat.Jpeg.Guid) //{ // flag = true; // message = "File is invalid!"; //} //else //{ db.Images.Add(imageEntity); db.SaveChanges(); //Save the changes to db so we get ID chosen by db //Save the image //String imgFileName = Server.MapPath("~/Content/Images/img-" + imageEntity.Id + ".jpg"); //ImageFile.SaveAs(imgFileName); //ImageFile.SaveAs(getFilePath(imageEntity.Id)); ImageStorage.SaveFile(Server, ImageFile, imageEntity.Id); //Push the image to the service bus queue for validation QueueManager qm = new QueueManager(imageEntity.User.Id); qm.addMessage(imageEntity, "Uploaded but it requires admin approvals."); ValidationQueue.Send(new ValidationRequest(imageEntity.Id, imageEntity.User.Id)); //} } } else { flag = true; message = "No file given or 0 sized file."; } if (flag) { ViewBag.Message = message; ViewBag.Tags = new SelectList(db.Tags, "Id", "Name", 1); return(View()); } else { ViewBag.Title = "Image uploaded."; return(RedirectToAction("Details", new { Id = imageEntity.Id })); } } else { ViewBag.Message = "No such user found."; return(View()); } //} //else //{ // ViewBag.Message = "You need to register first before uploading."; // return View(); //} } else { ViewBag.Message = "Errors in the form fields"; return(View()); } }
public AddImageUrl(ImageStorage entity) { Entity = entity; }
// [RequireHttps] public ActionResult Upload(ImageView image, HttpPostedFileBase ImageFile) { CheckAda(); TryUpdateModel(image); if (ModelState.IsValid) { ApplicationUser user = GetLoggedInUser(); if (user != null) { /* * Save image information in the database. */ Image imageEntity = new Image(); imageEntity.Caption = image.Caption; imageEntity.Description = image.Description; imageEntity.DateTaken = image.DateTaken; imageEntity.User = user; imageEntity.TagId = image.TagId; imageEntity.Validated = false; imageEntity.Approved = false; // currentuser = imageEntity.User.Email.Split('@')[0]; if (ImageFile != null && ImageFile.ContentLength > 0) { //if (ImageFile.ContentLength < 3000000) //{ String imgPath = ImageFile.ContentType.ToString(); //if (imgPath == "image/JPEG" || imgPath == "image/JPG" || imgPath == "image/jpeg" || imgPath == "image/jpg") //{ this.ApplicationDbContext.Images.Add(imageEntity); this.ApplicationDbContext.SaveChanges(); ImageStorage.SaveFile(Server, ImageFile, imageEntity.Id); QueueConnector.SendToQueue(imageEntity.UserId, imageEntity.Id); return(RedirectToAction("Details", new { Id = imageEntity.Id })); // } //else //{ // ViewBag.Message = "Please enter only JPEG image file !"; // SelectList tags = new SelectList(db.Tags, "Id", "Name", 1); // return View(tags); //} //} //else //{ // ViewBag.Message = "Please enter the image with the content size less than 3 MB !"; // SelectList tags = new SelectList(db.Tags, "Id", "Name", 1); // return View(tags); //} } else { ViewBag.Message = "No image file specified ! "; SelectList tags = new SelectList(db.Tags, "Id", "Name", 1); return(View(tags)); } } else { ViewBag.Message = "No such uerid registered !"; SelectList tags = new SelectList(db.Tags, "Id", "Name", 1); return(View(tags)); } } else { ViewBag.Message = "Please correct the errors in the form ! "; SelectList tags = new SelectList(db.Tags, "Id", "Name", 1); return(View(tags)); } }
private async void getImg(string path, BitmapImage img) { await ImageStorage.GetLoacalFolderImage(new Uri(path), img); }
/// <summary> /// 保存原图片与压缩图片 到磁盘 /// </summary> /// <param name="path">上传图片绝对路径</param> /// <param name="oImageStorage">上传图片对象</param> /// <param name="imagetype">上传图片类型</param> /// <returns></returns> //private void saveImage(System.Drawing.Image image, IImageStorage oImageStorage) //{ // bool slImage; // System.Drawing.Image objImg = image;//System.Drawing.Image.FromFile(path); // ImageRootPath = WebUI.UIBiz.CommonInfo.ImageRootPath; // //原图存储路径 // string sourcePath = ImageRootPath + "\\" + CurrentUser.UserLoginName + "\\" + oImageStorage.ItemSerialNum + oImageStorage.ImageType; // try // { // string sourceFolder = Path.Combine(ImageRootPath, CurrentUser.UserLoginName); // if (!Directory.Exists(sourceFolder)) // { // // Directory.CreateDirectory(ImageRootPath + "\\" + CurrentUser.UserLoginName); // Directory.CreateDirectory(sourceFolder); // } // //保存原图 // this.AttachFile.PostedFile.SaveAs(sourcePath); // SlImageRootPath = WebUI.UIBiz.CommonInfo.SlImageRootPath170; // if (!Directory.Exists(SlImageRootPath + "\\" + CurrentUser.UserLoginName)) // { // Directory.CreateDirectory(SlImageRootPath + "\\" + CurrentUser.UserLoginName); // } // // slImage = ImageController.ConvertImageToScale(sourcePath, 170, SlImageRootPath + "\\" + CurrentUser.UserLoginName + "\\" + oImageStorage.ItemSerialNum + oImageStorage.ImageType); // ArrayList sarray = new ArrayList(); // sarray.Add(sourcePath); // ArrayList aarray = new ArrayList(); // aarray.Add(SlImageRootPath + "\\" + CurrentUser.UserLoginName + "\\" + oImageStorage.ItemSerialNum + oImageStorage.ImageType); // ImageController.ToZipImage(sarray, aarray, 170); // SlImageRootPath = WebUI.UIBiz.CommonInfo.SlImageRootPath400; // if (!Directory.Exists(SlImageRootPath + "\\" + CurrentUser.UserLoginName)) // { // Directory.CreateDirectory(SlImageRootPath + "\\" + CurrentUser.UserLoginName); // } // sarray = new ArrayList(); // sarray.Add(sourcePath); // aarray = new ArrayList(); // aarray.Add(SlImageRootPath + "\\" + CurrentUser.UserLoginName + "\\" + oImageStorage.ItemSerialNum + oImageStorage.ImageType); // ImageController.ToZipImage(sarray, aarray, 400); // // slImage = ImageController.ConvertImageToScale(sourcePath, 400, SlImageRootPath + "\\" + CurrentUser.UserLoginName + "\\" + oImageStorage.ItemSerialNum + oImageStorage.ImageType); // } // catch // { // Response.Write("保存图片出现错误"); // } // finally // { // } //} protected void btnUpload_ServerClick(object sender, EventArgs e) { if (this.t_Date.Text.Trim() == string.Empty) { this.ShowMessage(this, "请选择时间"); return; } else { if (Convert.ToDateTime(this.t_Date.Text) > DateTime.Now) { this.ShowMessage(this, "拍摄时间应比现在早"); return; } } //验证日期 DateTime sDate = new DateTime(); DateTime eDate = new DateTime(); if (this.Calendar_StartDate.Text != "") { sDate = Convert.ToDateTime(this.Calendar_StartDate.Text); if (sDate <= DateTime.Now) { this.ShowMessage(this, "有效开始日期应比现在日期晚"); return; } } else { sDate = Convert.ToDateTime("1900-01-01"); } if (this.Calendar_EndDate.Text != "") { eDate = Convert.ToDateTime(this.Calendar_EndDate.Text); if (sDate == Convert.ToDateTime("1900-01-01") && eDate < DateTime.Now) { this.ShowMessage(this, "有效结束日期应至少比现在日期晚"); return; } else if (eDate < sDate) { this.ShowMessage(this, "有效结束日期应比有效开始日期晚"); return; } } else { eDate = Convert.ToDateTime("1900-01-01"); } //根节点 TreeNode parentNode = catalogTree.RootNode; //获取checked的节点List ArrayList nodeList = new ArrayList(); this.catalogTree.ArrCheckbox(nodeList, parentNode); ArrayList catalogIds = new ArrayList(nodeList.Count); foreach (TreeNode node in nodeList) { catalogIds.Add(new Guid(node.Value)); } if (catalogIds.Count == 0) { this.ShowMessage(this, "没有选择分类,上传失败!"); return; } ImageStorage img = new ImageStorage(); //string uploadvalue = this.ImageUpload.Value.Trim(); //string fileName = this.AttachFile.FileName; //获取上传文件的全路径 //uploadvalue.Substring(uploadvalue.Trim().LastIndexOf(@"\") + 1);//得到文件 string fileName = ""; if (!string.IsNullOrEmpty(Request["selectedFile"])) { fileName = Request["selectedFile"].ToString(); } string uploadFileName = ""; if (!string.IsNullOrEmpty(Request["uploadFileName"])) { uploadFileName = Request["uploadFileName"].ToString(); } //Response.Write("selectedFile:" + fileName); //Response.Write("uploadFileName:" + uploadFileName); //Response.End(); #region 组织数据 img.ImageType = System.IO.Path.GetExtension(fileName).ToLower(); //获取扩展名 img.FileName = System.IO.Path.GetFileName(fileName); //实际文件名称 img.Keyword = this.keyWord.Value; img.Description = this.imageDes.Value; img.shotDate = Convert.ToDateTime(this.t_Date.Text); img.StartDate = sDate; img.EndDate = eDate; img.Caption = this.txt_Caption.Value; img.Address = this.txt_Address.Value; img.Character = this.txt_Character.Value; img.FolderName = CurrentUser.UserLoginName; img.userId = CurrentUser.UserId; img.ItemId = Guid.NewGuid(); //img.ItemSerialNum = ImageStorageClass.GetImageSeq(DateTime.Now); img.ItemSerialNum = Path.GetFileNameWithoutExtension(uploadFileName); img.GroupId = CurrentUser.UserGroupId; #endregion //modify by dtf 08-06-16 (png,psd,ai) System.Drawing.Image m_Image = null; if (this.CheckImageType(img.ImageType))// is image format { if (img.ImageType == "ai") { img.Hvsp = "s"; } else { // m_Image = System.Drawing.Image.FromFile(fileName); ImageRootPath = WebUI.UIBiz.CommonInfo.ImageRootPath; string sourcePath = ImageRootPath + "\\" + CurrentUser.UserLoginName + "\\" + uploadFileName; //m_Image = System.Drawing.Image.FromStream(this.AttachFile.PostedFile.InputStream); m_Image = System.Drawing.Image.FromFile(sourcePath); Int32 height = Convert.ToInt32(m_Image.Height.ToString()); Int32 width = Convert.ToInt32(m_Image.Width.ToString()); if (height > width) { img.Hvsp = "v"; } else if (width > height) { img.Hvsp = "h"; } else { img.Hvsp = "s"; } } } else { img.Hvsp = string.Empty; } //存储数据库记录 // img.ItemSerialNum = ImageStorageClass.AddImageStorage(img); if (ImageStorageClass.AddImageStorage(img) == null) { this.ShowMessage(this, "上传失败"); return; } //准能压缩文件 try { if (!this.CheckImageType(img.ImageType) || img.ImageType == "ai") { //uploadFile(img);//存储普通文件 } else { //saveImage(m_Image, img);//将imageID与catalogID保存到ImageStorage_Catalog表 } ImageStorageClass imageClass = new ImageStorageClass(); imageClass.CreateRelationshipImageAndCatalog(img.ItemId, (Guid[])catalogIds.ToArray(typeof(Guid))); this.t_Date.Text = ""; this.imageType.Value = ""; this.keyWord.Value = ""; this.imageDes.Value = ""; this.txt_Address.Value = ""; this.txt_Caption.Value = ""; this.txt_Character.Value = ""; this.Calendar_StartDate.Text = ""; this.Calendar_EndDate.Text = ""; initCalendar(); this.ShowMessage(this, "上传成功"); } catch (Exception ex) { LogWriter.WriteExceptionLog(ex); this.ShowMessage(this, "上传失败"); } finally { if (m_Image != null) { m_Image.Dispose(); } } }
IEnumerator StoreImages() { yield return(ImageStorage.Store(gradeImages)); loaded = true; }