我从本地Access mdb文件读取值。一个值作为字符串存储在数据库中,并将其存储在一个表中。当使用GetType()
方法时,它返回“System.String”,我可以在控制台上打印而不会出现问题,但是当我想将它用作另一个方法的属性(需要一个字符串)时,我得到一个错误(“无法从'object'改为'string'“,而'int'则相同)。一些int值会出现同样的问题。不能在C#中从表格到字符串属性编写字符串
我做错了什么或在这种情况下是什么问题?
Console.WriteLine(dt.Rows[0][ProjName]); //prints project_name
Console.WriteLine(dt.Rows[0][ProjName].GetType()); //print "System.String"
Project = new Project(dt.Rows[0][ProjName], dt.Rows[0][MinDay], dt.Rows[0][MinWeek], dt.Rows[0][DayWeek]); //Error
Project = new Project(Convert.ToString(dt.Rows[0][ProjName]), Convert.ToInt32(dt.Rows[0][MinDay]), Convert.ToInt32(dt.Rows[0][MinWeek]), Convert.ToInt32(dt.Rows[0][DayWeek])); //Works Fine
的构造函数项目类别:
“Console.WriteLine()”的使用调用接受类型为“Object”的参数的重载。这个叠加函数在内部调用给定对象值的'ToString()',展示你所看到的。 – 2011-05-12 16:33:18