“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------指定的转换无效。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.InvalidCastException: 指定的转换无效。源错误:
行 24: while (rdr.Read())
行 25: {
行 26: brandInfo cat = new brandInfo(rdr.GetInt32(0), rdr.GetString(1), rdr.GetString(2), rdr.GetString(3));
行 27: categories.Add(cat);
行 28: }
其中0字段是int类型,1字段是string,2字段是char,3字段是nchar
好像问题出在后两个字段,可不知道如何处理,请教
--------------------------------------------------------------------------------指定的转换无效。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.InvalidCastException: 指定的转换无效。源错误:
行 24: while (rdr.Read())
行 25: {
行 26: brandInfo cat = new brandInfo(rdr.GetInt32(0), rdr.GetString(1), rdr.GetString(2), rdr.GetString(3));
行 27: categories.Add(cat);
行 28: }
其中0字段是int类型,1字段是string,2字段是char,3字段是nchar
好像问题出在后两个字段,可不知道如何处理,请教
解决方案 »
- 寻找一种管理物理资源的方法 听听大家的意见
- asp.net控件开发,一个有难度的问题。欢迎高手前来讨论
- 如何把DataGridView中的多维表头生成到Excel
- cs源代码中怎么发送表单到另一个asp.net页面
- dropdownlist绑定数据后无法显示
- 请问为什么我单击IMAGEBUTTON提交页面时页面执行两次PageLoad,第一次IsPostBack为true,第二次为false
- 第一天上班就出现了这么大的一个难题,看来是没有办法混了!救救我吧!
- 求助: DataList 分页写完了 查询列以后 我想点下一页的时候还是显示查询列信息 如何绑定 我一点下一页就没查询了
- MVC model 问题
- 【求助】关于分页问题,大神请进!!!
- 菜鸟提问,关于转换编码的问题
- 高手进来看看. WebEditor1使用时总报错
brandInfo cat = new brandInfo(rdr.GetInt32(0), rdr.GetString(1), rdr.GetString(2), rdr.GetString(3));
new的时候构造函数里面类型需一致.
rdr.Get..需要类型都一致,应该是类型不一致.
数据库里面字段为空或者非int型
1字段在数据库中是什么类型?
on a.questionid=b.questionid
where b.creator='"+name+"' order by b.createdtime desc"; expert ext = null;
SqlDataReader dr = Common.Database.ExecuteReader(CommandType.Text, sql);
while (dr.Read())
{
ext = new expert(dr.GetString(0), dr.GetString(1), dr.GetString(2));
}
return ext;
---------------------------------------------------------
private string _title;
private string _Creator;
private string _Comment;
public expert(string title, string creator, string comment)
{
this._title = title;
this._Creator = creator;
this._Comment = comment;
}
public object GetValue(int i)
然后在Watch窗口或者通过typeof检查具体类型
本来是object类型的~~ 字符串就这样写 rdr["表列名"].ToString();
其他的可以~~ (int)rdr["列明"]; 可以这样写~
0:int 1:string 2:char(1) 3:nchar(20) public brandInfo(int _Pid,string _Pname,string _Ppinyin,string _Penglish)
{
this._Pid = _Pid;
this._Pname = _Pname;
this._Ppinyin = _Ppinyin;
this._Penglish = _Penglish;
}以上是定义
把NULL的换为''