附件操作失败!

问题描述

我要存入附件的绝对路径aspx<tdclass="style2"><asp:FileUploadID="fileImg"runat="server"/></td>

csstringimg=fileImg.PostedFile.FileName;FileInfofile=newFileInfo(img);stringstrconn=ConfigurationSettings.AppSettings["connstring"];SqlConnectionconn=newSqlConnection(strconn);stringuserid=Session["userid"].ToString();GuidGuserid=newGuid(userid);SqlCommandcm=newSqlCommand("aa_",conn);cm.CommandType=CommandType.StoredProcedure;cm.Parameters.Add("@img",SqlDbType.VarChar,50,img).Value=file;cm.Parameters.Add("@userid",SqlDbType.UniqueIdentifier).Value=Guserid;try{inti=cm.ExecuteNonQuery();if(i>0){Response.Write("<scriptlanguage=javascript>alert('成功')</script>");}redirect();}

错误信息将参数值从FileInfo转换到String失败。

解决方案

解决方案二:
stringimg=fileImg.PostedFile.FileName;在这里你要把fileImg.PostedFile.Save()保存到服务器再操作FileInfofile=newFileInfo(img);
解决方案三:
stringimg=Server.MapPath(".")+"/"+System.IO.Path.GetFileName(fileImg.FileName);cm.Parameters.Add("@img",SqlDbType.VarChar,50,img).Value=img;这样只存了第一个字母亲,真不知怎么弄
解决方案四:
这样能保存附件了,但是传到数据库只能得到盘符,如:d:a1.jpg数据库只存了d,我想存成http://www.aa.com/a/1.jpgstringimg=Server.MapPath(".")+"/"+System.IO.Path.GetFileName(fileImg.FileName);fileImg.SaveAs(img);stringstrconn=ConfigurationSettings.AppSettings["connstring"];SqlConnectionconn=newSqlConnection(strconn);stringuserid=Session["userid"].ToString();GuidGuserid=newGuid(userid);SqlCommandcm=newSqlCommand("aa_",conn);cm.CommandType=CommandType.StoredProcedure;cm.Parameters.Add("@img",SqlDbType.VarChar,50,img).Value=img;cm.Parameters.Add("@userid",SqlDbType.UniqueIdentifier).Value=Guserid;try{inti=cm.ExecuteNonQuery();if(i>0){Response.Write("<scriptlanguage=javascript>alert('成功')</script>");}redirect();}

解决方案五:
支持下
解决方案六:
继续请帮忙
解决方案七:
Up
解决方案八:
Request.Url.Host··获取主机头,再进行拼接
解决方案九:
引用7楼SATAN1122的回复:

Request.Url.Host··获取主机头,再进行拼接

能说细点么?

时间: 2024-10-11 03:21:18

附件操作失败!的相关文章

Win8系统卸载IE11浏览器出现“无法卸载操作失败”怎么办

Win8系统卸载IE11浏览器出现"无法卸载操作失败"怎么办  具体方法如下: 1.进入系统所在磁盘C盘,依次打开Windows--TEMP文件夹,并将TEMP文件夹里的所有文件删除; 2.按Win+X组合键,点击打开"命令提示符(管理员)"; 3.在命令行提示符中输入或者复制粘贴以下命令并执行: FORFILES /P %WINDIR%servicingPackages /M Microsoft-Windows-InternetExplorer-*11.*.mum

wpf-新大陆LED编程,老是提示操作失败,用的是C#的WPF

问题描述 新大陆LED编程,老是提示操作失败,用的是C#的WPF 2C 厂家提供了三个动态链接,里面包含了控制LED的方法,但是不知道怎么用,自己用以下的代码试了以下,都没有成功.希望大神能帮我解答一下 解决方案 解决方案二: 解决方案三: 解决方案四:

java jsp-为什么我提示我数据库操作失败!!哪里出现了问题。

问题描述 为什么我提示我数据库操作失败!!哪里出现了问题. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% request.setCharacterEncoding("UTF-8"); %> <%@ page import="java.util.*"

SSH 中 用了atomikos集成JTA 事务后,hibernate执行任何操作失败后都不抛异常

问题描述 在项目中, 用了atomikos集成JTA 事务后,hibernate执行任何操作失败后都不抛异常比如,我用getHibernateTemplate().load方法加载一个不存在的数据都不抛出异常,或者我删除一个不存在的记录也不抛异常,谁知道这是什么原因啊?????????? 问题补充:lizhi92574 写道 解决方案 load查询返回代理对象,在你使用的时候才会抛出异常

centos-通过JDBC驱动连接Hive操作失败

问题描述 通过JDBC驱动连接Hive操作失败 hive版本:1.2.1 Hive.java程序片段: Class.forName("org.apache.hive.jdbc.HiveDriver"); 在centos上,通过javac -classpath对Hive.java 编译.相应的jar:hive-jdbc,hive-exec,hive-metastore 放在-classpath后面了. 编译成功: 通过jar cvf 打包成功为hive.jar. 然后通过 hadoop

TransactionScope只要一个操作失败,它会自动回滚,Complete表示事务完成

实事上,一个错误的理解就是Complete()方法是提交事务的,这是错误的,事实上,它的作用的表示本事务完成,它一般放在try{}的结尾处,不用判断前台操作是否成功,如果不成功,它会自己回滚.   #region 事务问题             using (TransactionScope trans = new TransactionScope())             {                 try                 {                   

Jquery Ajax请求文件下载操作失败的原因分析及解决办法

jQuery确实是一个挺好的轻量级的JS框架,能帮助我们快速的开发JS应用,并在一定程度上改变了我们写JavaScript代码的习惯. 废话少说,直接进入正题,我们先来分析一下失败的原因 一.失败的原因 那是因为response原因,一般请求浏览器是会处理服务器输出的response,例如生成png.文件下载等,然而ajax请求只是个"字符型"的请求,即请求的内容是以文本类型存放的.文件的下载是以二进制形式进行的,虽然可以读取到返回的response,但只是读取而已,是无法执行的,说白

hibernate级联删除操作失败

问题描述 对hibernate刚入手,不得其精华配置文件如下主表<class name="PrototypeOversea" table="T_MT_PROTOTYPEOVERSEA"><id name="sid" type="java.lang.Integer"><column name="SID" precision="10" scale="0

Windows 初始化操作失败,因为传输拒绝打开起始地址

上网查了查,官方的解释为:TCP/IP协议出了问题. 官方解释是: 要更正这一问题, 1. 请在 Show Bindings For 列表框中单击 WINS Client(TCP/IP). 2. 选择显示 WINS 捆绑,然后单击 Enable. 3. 单击两次 OK .如果启动捆绑没有更正问题,那么完全删除 TCP/IP 协议,然后对其从新安装. 最终解决方案:  代码如下 复制代码 netsh int ip reset c:/resetlog.txt 该命令的意思是初始化TCP/IP协议并将