Пример #1
0
        public IHttpActionResult Save(MultiFileModel model)
        {
            // var fileName = DateTime.Now.ToString("yyyyMMdd.hhmmss.") + type + ".json";
            // File.Create(System.Web.Hosting.HostingEnvironment.MapPath("~/Content/files/" + fileName + ".tmp"));
            try
            {
                var serializer = new JavaScriptSerializer()
                {
                    MaxJsonLength = Int32.MaxValue
                };

                File.WriteAllText(System.Web.Hosting.HostingEnvironment.MapPath("~/Content/files/" + model.FileName), serializer.Serialize(model.Files), System.Text.Encoding.UTF8);
                return(Ok(new { success = true }));
            }
            catch (Exception ex)
            {
                return(Ok(new { success = false, msg = ex.Message }));
            }
        }
Пример #2
0
        public IHttpActionResult SaveImg(MultiFileModel model)
        {
            try
            {
                // var fileName = DateTime.Now.ToString("yyyyMMdd.hhmmss.") + type + ".json";
                // File.Create(System.Web.Hosting.HostingEnvironment.MapPath("~/Content/files/" + fileName + ".tmp"));
                var dirName = System.Web.Hosting.HostingEnvironment.MapPath("~/Content/files/" + model.FileName);
                Directory.CreateDirectory(dirName);
                Directory.CreateDirectory(Path.Combine(dirName, "thumb"));
                int thumbWidth = 120;

                foreach (var fileB64 in model.Files)
                {
                    if (fileB64.base64 == null)
                    {
                        continue;
                    }
                    var    fileName  = Path.Combine(dirName, fileB64.name);
                    var    thumbName = Path.Combine(dirName, "thumb", fileB64.name);
                    byte[] fileBytes = Convert.FromBase64String(fileB64.base64String);
                    using (MemoryStream uplfileStream = new MemoryStream(fileBytes, 0, fileBytes.Length))
                    {
                        using (FileStream fs = new FileStream(fileName, FileMode.OpenOrCreate))
                        {
                            uplfileStream.CopyTo(fs);
                            fs.Flush();
                        }

                        Image image = Image.FromStream(uplfileStream);
                        Image thumb = image.GetThumbnailImage(thumbWidth, (int)(((float)image.Height / (float)image.Width) * (float)thumbWidth), () => false, IntPtr.Zero);
                        thumb.Save(thumbName);
                    }
                }
                return(Ok(new { success = true, dir = dirName }));
            }
            catch (Exception ex)
            {
                return(Ok(new { success = false, msg = ex.Message }));
            }
        }