WCF 服务器端 上传图片

        /// <summary>
        /// 上传图片
        /// </summary>
        /// <param name="name"></param>
        /// <param name="imageByte"></param>
        /// <returns></returns>
        public string UpLoadImage(string name, byte[] imageByte)
        {
            try
            {
                //事务
                using (RgFx.Data.DbTransactionScope scop = new RgFx.Data.DbTransactionScope())
                {
                    using (MemoryStream stream = new MemoryStream(imageByte))
                    {
                        //保存路径
                        //string temps = HttpContext.Current.Server.MapPath("Images");
                        string temps = System.Web.Hosting.HostingEnvironment.MapPath("~/WCFServiceImages/" + name + "");

                        #region//二进制流转Image类型,(加水印) 第一种保存方式
                        System.Drawing.Image bgimage = System.Drawing.Image.FromStream(stream);
                        stream.Close();
                        //重新画,加水印
                        string addText = DateTime.Now.ToString();
                        System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bgimage);
                        System.Drawing.Font f = new System.Drawing.Font("Verdana", 10);
                        System.Drawing.Brush b = new System.Drawing.SolidBrush(System.Drawing.Color.Blue);
                        g.DrawString(addText, f, b, 0, 0);
                        g.Dispose();
                        bgimage.Save(temps);
                        bgimage.Dispose();
                        #endregion

                        #region//(不加水印把二进制流保存成文件) 第二种保存方式
                        using (FileStream fstream = File.Create(temps, imageByte.Length))
                        {
                            fstream.Write(imageByte, 0, imageByte.Length);   //二进制转换成文件
                        }
                        #endregion
                    }
                    //提交事务
                    scop.Complete();
                }
                return new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(new { Statue = "OK", Message = "图片上传成功!" });
            }
            catch (Exception ex)
            {
                return ex.ToString();
            }
        }

 

转载于:https://www.cnblogs.com/lushousong/p/3432997.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值