2011-03-24 81 views
3

如何在C#中将数据库对象转换为int?如何在C#中将数据库对象转换为int?

int uid = Convert.ToInt32(dt.Rows[0]["userid"].ToString()); 
+0

问题在哪里? – sarnold 2011-03-24 10:14:56

+0

什么是数据库列的类型?该代码会发生什么? (另外,如果你想将它转换为int,你为什么要把它转换成一个字符串?) – 2011-03-24 10:17:30

回答

6

在转换为int之前,不应将对象转换为字符串。

int uid = Convert.ToInt32(dt.Rows[0]["userid"]); 

如果您需要将字符串转换为int然后使用;

int uid = int.Parse("1"); 
+0

1. C#区分大小写。 2.在代码之前放置四个空格,将其格式化为代码。使用'>'作为引用块。有关[Markdown编辑帮助](http://stackoverflow.com/editing-help)页面的更多信息。 – 2011-03-24 10:23:19

+0

@martinho,欢呼声,我现在不在IDE前面测试代码。 – 2011-03-24 10:43:52

1

Int32.Parse(...) ... - 您的ToString()方法

5

使用是Null转换为整形前要检查。

DataRow row=dt.Rows[0]; 
int uid = row.IsNull("userid") ? 0 : (Convert.ToInt32(dt.Rows[0]["userid"]);