c#新手球助~!小鸟问题,懂c#的都可以帮我,谢谢了

while (dr.Read())
{
string w= dr.GetString(0);
}

错误提示:无法将类型为“System.Single”的对象强制转换为类型“System.String”。
toString()也不行
SqlDataReader dr = da.getreader(sql);

DataReader数据读取器的Get方法写错了,你的数据库中,要读取的当前列的数据类型是float的,你用GetString()方法是错误的。换用GetFloat()方法试试。
最后别忘了进行数据类型强制转换,也就是string w=dr.GetFloat(0).Tostring();
如果上面的方法不凑效,用GetValue(0).Tostring()。这个语句的作用是,管你是什么类型,先获取值再说,然后强制转换为String类型。
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-04-19
你这个应该是SQLDataRead 读取数据吧?
如果是. 你则改成. string w = (string)dr[0];或者把0改成你的数据库列名
第2个回答  2009-04-19
你的dr是什么类型的?

你用toString() 方法试一下
第3个回答  2009-04-19
string w= dr.GetString(0).ToString();
第4个回答  2009-04-19
试一试这个,Convert.ToString(dr.GetString(0));

c#新手球助~!小鸟问题,懂c#的都可以帮我,谢谢了
DataReader数据读取器的Get方法写错了,你的数据库中,要读取的当前列的数据类型是float的,你用GetString()方法是错误的。换用GetFloat()方法试试。最后别忘了进行数据类型强制转换,也就是string w=dr.GetFloat(0).Tostring();如果上面的方法不凑效,用GetValue(0).Tostring()。这个语句的作用是...

c#小鸟求救,急~!分不多了,但是解决了给加分
按Ctrl+F在整个项目或者整个解决方案里查找“fufu”,在调试的时候按Ctrl+D,再按Q即可打开“监视”

懂C#的帮帮忙,对你们来说很简单的~!!!
Console.Read()是读取下一个字符,只会读取1个字符 Console.ReadLine()是读取一行字符 第二个问题:控制台程序我没怎么研究过输入,但是应该没有别的方法可以输入多个数据,如果你想一次多输入几个数据可以用一个符号隔开,比如(,),然后后台这么取 string str1 = Console.ReadLine();string[] strs=...

新手入门c#.net网络编程的问题。
我个人建议你从理论入手,先了解下C#和C#的一些基础(或者如果讨厌看那些烦乱的理论的话,可以直接从一些介绍C#的小程序入手)期间注意使用好程序自带的MSDN(帮助文档),我听过一句话:MSDN的使用水平直接可以看出一个人的技术水平~不要过多的依赖Internet(虽然找起很快很多,不过都是大同小意的,一旦没有了网...

c#中tcp异步编程遇到异常问题,新手感觉很不得懂 希望大神能从浅显的角度...
上面是你理解的有问题。第一:tcpClient = new TcpClient(AddressFamily.InterNetwork);这句话不是获得本机的ip地址,而是要创建一个使用ip版本4的寻址方案的TcpClient对象。这时只是定义这个对象,并没有建立连接 第二:tcpClient = new TcpClient(host,52888);这句代码的意思是建立一个连接到host和其端口...

C#中的窗体程序 想让一个窗体上textbox中的值 传递到另一个label中_百 ...
最简单的方法是你先新建一个静态类 在类里面定义一个string 类型的变量 在登陆成功后给这歌变量赋值,然后就可以在登陆后的窗户使用了 public static CommonData { public string StudentId(){get;set;} } 登陆成功后赋值:CommonData.StudentId="2010307200111";使用的时候 label.Text =CommonData....

我是新人,谁帮我看一下在C#里面这是什么意思(i%2)!=0
这人在C#里是“求模”的运算符。。i%2!=0就是说用i除以2的余数据不为0 建议去看下C#的运算符的相关知识

[新手]C#中,怎么做a+b的问题?
新建个C#的控制台应用程序 全选,输入如下代码 using System;using System.Collections.Generic;using System.Text;namespace a_b { class Program { static void Main(string[] args){ int a = 0;int b = 0;try { a = int.Parse(Console.ReadLine());b = int.Parse(Console.ReadLine());}...

C#读串口的数据,读不全的问题 不懂的千万别说话!
没遇到你说的问题,串口组件搜到数据后,会触发一个事件,在这个事件里面获取数据的长度,一次取出来,放到缓冲区里面。private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e){ byte[] buff = new byte[serialPort1.BytesToRead];serialPort1.Read(buff, ...

关于c#做前台,c++做后台开发的问题,懂的人不吝赐教
既然后台使用了C++,那前台很可能会用到一些C++的DLL,但我的建议是,既然前台选择了C#,那就应该尽量多了用C#,尽量少的部分使用C++;也就是说,只有通信等部分可能用到些C++,其余部分应该尽量全部C#。是对于前台,只要不犯一些编程上的错误,两种语言效率上的差异或者是损失,是可以忽略掉的。

相似回答
大家正在搜