c# Uploadify 如何上传图片成功后在控制器里面将图片转为二进制保存到数据库? 捣鼓了好久都没做出来~~

问题描述

[AcceptVerbs(HttpVerbs.Post)]publicContentResultUpload(HttpPostedFileBaseFileData,stringfolder){stringfilename="";if(null!=FileData){try{filename=Path.GetFileName(FileData.FileName);//获得文件名stringfullPathname=Path.Combine(folder,filename);saveFile(FileData,folder,filename);}catch(Exceptionex){filename=ex.ToString();}}returnContent(filename);}[NonAction]privateboolsaveFile(HttpPostedFileBasepostedFile,stringfilepath,stringsaveName){boolresult=false;if(!Directory.Exists(filepath)){Directory.CreateDirectory(filepath);}try{postedFile.SaveAs(Path.Combine(filepath,saveName));result=true;}catch(Exceptione){thrownewApplicationException(e.Message);}returnresult;}

解决方案

解决方案二:
第一步:转换为byte数组byte[]fileData=newbyte[postedFile.ContentLength];postedFile.InputStream.Read(fileData,0,postedFile.ContentLength);第二步:入库如下sqlserver示例stringsql="insertintot_img(img)values(@img)";stringstrconn=System.Configuration.ConfigurationManager.ConnectionStrings["DB"].ToString();SqlConnectionsqlConn=newSqlConnection(strconn);SqlCommandsqlComm=newSqlCommand(sql,sqlConn);sqlComm.Parameters.Add("@img",SqlDbType.Image);sqlComm.Parameters["@img"].Value=fileData;sqlConn.Open();sqlComm.ExecuteNonQuery();sqlConn.Close();
解决方案三:
参考这里,把文件转换为数据流:
解决方案四:
将图片以二进制方式存储到数据库protectedvoidimgbtnCreate_Click(objectsender,ImageClickEventArgse){stringPerHomeName=tbPerHomeName.Text;//获取空间名stringPerHomeSign=txtPerSign.Text;//获取个性签名stringimgPath=uploadFile.PostedFile.FileName;//获取文件件名stringlastName=imgPath.Substring(imgPath.LastIndexOf(".")+1);//获取文件上传后缀名SqlConnectionconn=newSqlConnection(ConfigurationManager.AppSettings["conStr"]);conn.Open();if(uploadFile.PostedFile.FileName!=""&&lastName.ToLower()=="jpg"||lastName.ToLower()=="gif"){if(uploadFile.PostedFile.ContentLength>40960){Response.Write("<scriptlanguage='javaScript'>alert('你上传的图片超过了40KB!')</script>");return;}//codego.net/tags/11/1/intimgLength=uploadFile.PostedFile.ContentLength;//获取上传文件大小Byte[]imageData=newByte[imgLength];//定义Byte数组HttpPostedFilehp=uploadFile.PostedFile;//创建访问客户端上传文件的对象Streamimagestream=hp.InputStream;//创建数据流对象//将图片数据放到image数据对象实例中,其中0代表数组指针的起始位置,imagelength表示要读取流的长度imagestream.Read(imageData,0,imgLength);stringsqlstr="insertintoPerHomeDetail(PerHomeName,PerHomeSign,PerHomeLogo)values('"+PerHomeName+"','"+PerHomeSign+"',@ImageData)";SqlCommandcomm=newSqlCommand(sqlstr,conn);comm.Parameters.Add("@ImageData",SqlDbType.Image);comm.Parameters["@ImageData"].Value=imageData;comm.ExecuteNonQuery();conn.Close();Response.Write("<Script>alert('个人空间创建成功!')</Script>");}else{Response.Write("<script>alert('上传图像不能为空,且格式必须为gif或jpg!');location='javascript:history.go(-1)'</script>");}}

时间: 2024-11-05 17:31:59

c# Uploadify 如何上传图片成功后在控制器里面将图片转为二进制保存到数据库? 捣鼓了好久都没做出来~~的相关文章

微信支付 php 回调-微信支付成功后,如何把支付信息更新到本地的数据库

问题描述 微信支付成功后,如何把支付信息更新到本地的数据库 初学微信,用的官方微信支付的php DEMO,在自己的服务器调试成功了,log里也有notify返回的正确信息(订单号.额度等等),想请教下高手,在哪里添加代码后,可以把服务器回调接收到的成功订单信息出入到自己的数据库.是在notify.php里面添加吗,大概怎么写,求高手指教 解决方案 我用的是jsp不知道和php一不一样,java的DEMO里有一个回调函数的,可以在回调函数中处理

接口-请问微信支付支付成功后如何获取所谓notify的返回值

问题描述 请问微信支付支付成功后如何获取所谓notify的返回值 情况其实不复杂,就是有一个地方一直没搞明白.我已经按照demo构成好了xml包,顺利的换取到了prepal_id,也通过js的那个接口,顺利的能弹出输入密码的对话框,也能输入密码并且钱也到了我的账户上来,都OK. 但一直困扰我的是这个:$input->SetNotify_url("http://www.xxxx.com/index.php/aaa/bbb");这一行似乎一直不起作用.因为在调用了获取prepal_i

java-请问,我在做一个上传图片的功能。用ajaxSubmit做异步上传。成功后图片没有更改。

问题描述 请问,我在做一个上传图片的功能.用ajaxSubmit做异步上传.成功后图片没有更改. 用ajaxSubmit,在做一个上传图片的功能,选择一张图片上传成功后.刷新页面,预览上传的图片不是最新的.需要手动刷新一下预览图片,或者Ctrl+F5刷新页面才可以正常显示.有什么好的解决办法吗?异步方法用的是post提交 解决方案 保存为不同的名称,否则同名有缓存问题,同名的可以加加时间戳参数防止缓存 <img id="img" /> <script> docu

form表单上传图片-提交给php方法,成功后想返回前台一些值,但前台始终无法获取到参数值。急!!!

问题描述 form表单上传图片-提交给php方法,成功后想返回前台一些值,但前台始终无法获取到参数值.急!!! form表单部分代码:以此来实现form提交页面不跳转. <form action="user.php" method="post" ENCTYPE="multipart/form-data" target="id_iframe"> <input name="upfile" ty

json-用plupload上传图片,和struts2结合,怎么获取上传成功后action返回的数据

问题描述 用plupload上传图片,和struts2结合,怎么获取上传成功后action返回的数据 也就是在plupload中怎么获取后台传过来的数据,是json数据,再简单点说,怎么写 plupload中的回调函数 解决方案 //使用AJAX上传文件,支持多文件上传,已与Plupload2.1.2插件测试通过 @RequestMapping("/ajaxLoadFile") @ResponseBody public Object ajaxLoadFile(HttpServletRe

png-Linux下scp上传图片文件后,继续验证的问题

问题描述 Linux下scp上传图片文件后,继续验证的问题 PNG_SUFFIX="png" JSON_SUFFIX="json" echo $1 filelist=ls $1 for file in $filelist do [[ $file == *$PNG_SUFFIX ]] && scp $file root@192.168.1.65:~/public_html/lc/cover/ [[ $file == *$JSON_SUFFIX ]] &

vc++-SNMP++ 实现lib编译成功后应该应该放在测试程序的哪个目录下呢?

问题描述 SNMP++ 实现lib编译成功后应该应该放在测试程序的哪个目录下呢? 为什么我编译程序会出现这样的情况,求大神指导 解决方案 把lib文件放到你的工程一个目录,然后工程属性中,LIB选项中设置link的lib库名称和路径

app-微信支付 APP支付 支付成功后 不进回调

问题描述 微信支付 APP支付 支付成功后 不进回调 我的回调URL 是公网IP 用的是公网域名,直接浏览器访问 回调URL 可以访问的到,但是支付成功后,微信不发通知给回调URL... 解决方案 app支付_微信支付微信APP支付 解决方案二: 问下微信客服,可能是调用方面或者配置方面有问题.

gerrit 搭建成功后,背景不是绿色,是灰白色的,好无奈,求助啊!

问题描述 gerrit 搭建成功后,背景不是绿色,是灰白色的,好无奈,求助啊! gerrit 搭建成功后,背景不是绿色,是灰白色的,好无奈,求助啊!