试图弄清楚如何将这个zip字符串转换为int。我得到了一个强制转换异常:
member.Zip = reader.GetInt16(ordinals[(int)Enums.MemberColumn.Zip]);更新:
谢谢大家。下面是我想出的对我来说足够好的方法:
Int32.TryParse(reader.GetString(ordinals[(int)Enums.MemberColumn.Zip]), out number) ? number : 0;发布于 2012-11-05 23:10:28
您需要将其作为字符串获取,然后解析该字符串:
string zipString = reader.GetString(ordinals[(int)Enums.MemberColumn.Zip]);
member.Zip = Int16.Parse(zipString);DataReaders期望字段的底层类型与您要调用的特定方法相同。因此,GetInt16需要底层的16位整数,GetBoolean需要底层的位,而GetString需要底层的字符串。它不会为你做任何转换。
发布于 2012-11-05 23:09:12
member.Zip = Convert.ToInt16(reader.GetString(ordinals[(int)Enums.MemberColumn.Zip]));https://stackoverflow.com/questions/13234758
复制相似问题