public IHttpActionResult Post() { HttpFileCollection files = HttpContext.Current.Request.Files; string openid = HttpContext.Current.Request.Form[0]; string imgpath = HttpContext.Current.Server.MapPath("~/imgcoll/"); foreach (string key in files.AllKeys) { HttpPostedFile file = files[key]; if (string.IsNullOrEmpty(file.FileName) == false) { file.SaveAs(imgpath + file.FileName); } //写入数据库 wximginfo info = new wximginfo { openid = openid, file_name = imgpath + file.FileName, upload_date = System.DateTime.Now, ocr = "N" }; db.wximginfo.Add(info); } db.SaveChanges(); return(Ok("Upload Success!")); }
public string getinfo() { //获得需要OCR的记录=>rs var rs = from p in db.wximginfo where p.ocr == "N" select new wximginfoDTO { file_name = p.file_name, id = p.id, openid = p.openid }; if (rs.Count() == 0) { return("Null"); } foreach (var item in rs) { //循环调用OCR,逐个文件进行识别, 并保存到数据库 var imgfile = item.file_name; JcOcr jcorc = new JcOcr(); JArray OCRrs = jcorc.AccurateBasicDemo(imgfile); JArray OCRrs2 = jcorc.ReceiptDemo(imgfile); //匹配字段 jcMatch jcm = new jcMatch(); //string rs1 = jcorc.jcmatch(OCRrs,OCRrs2, item.openid); string rs1 = jcm.Match(OCRrs, OCRrs2, item.openid); //识别成功后,标识OCR="Y" if (rs1 == "ok") { wximginfo rc = db.wximginfo.Find(item.id); // rc.ocr = "Y"; } ; } db.SaveChanges(); return("OCR Succeed! and the data had saved !"); }