| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2306 人关注过本帖
标题:运行程序时,出现错误System.InvalidCastException: 指定的转换无效,帮忙解 ...
取消只看楼主 加入收藏
tetet
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2005-5-5
结帖率:100%
收藏
 问题点数:0 回复次数:0 
运行程序时,出现错误System.InvalidCastException: 指定的转换无效,帮忙解决一下
源码如下:
private static  int ExecuteNonQuery_in(string commandText,bool HasReturn, params SqlParameter[] commandParameters)
        {
            int result = -1 ;
            //创建并打开数据连接            
            if (_connection.State != ConnectionState.Open)
            {
                _connection.Open();
            }        
            
            _command.Connection = _connection ;
            PrepareCommand(commandText, commandParameters);

            //调用执行函数
            //执行命令
            try
            {
                result = _command.ExecuteNonQuery();
            }
            catch(Exception e)
            {
                //执行失败
                //从异常中获取失败信息
                string msg = e.Message ;
                //调用写日志方法
                Trace.Write("ExecuteNonQuery","Error",commandText+"|"+msg) ;
            }
            if(HasReturn)
            {
                result =(int)_command.Parameters["@RETURN_VALUE"].Value
错误信息提示:System.InvalidCastException: 指定的转换无效
            }                
            
            //清除参数
            _command.Parameters.Clear();

            //执行完毕后关闭连接
            _connection.Close() ;

            return result ;
        }
        
        /// <summary>
        /// 执行无返回值的存储过程
        /// 注意参数值的顺序需与存储过程参数顺序一致
        /// </summary>        
        /// <param name="spName">存储过程名</param>
        /// <param name="parameterValues">参数值</param>
        /// <returns>执行结果</returns>
        public static int ExecuteNonQuery(string spName,bool hasReturns,params object[] parameterValues)
        {
            //如果有参数值, 先赋参数值再执行
            if ((parameterValues != null) && (parameterValues.Length > 0))
            {
                //获取存储过程参数
                SqlParameter[] commandParameters = GetSpParameters(spName,hasReturns);

                //为存储过程参数设定参数值
                AssignParameterValues(commandParameters, parameterValues);

                //调用执行带参数值的存储过程方法
                return ExecuteNonQuery_in(spName,hasReturns, commandParameters);
            }
            //不带参数
            else
            {
                return ExecuteNonQuery_in(spName,hasReturns);
            }
        }
望大家帮忙解决一下

[[it] 本帖最后由 tetet 于 2008-11-26 16:44 编辑 [/it]]
搜索更多相关主题的帖子: 数字 运行 
2008-11-26 14:00
快速回复:运行程序时,出现错误System.InvalidCastException: 指定的转换无效, ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030143 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved