【发布时间】:2019-03-16 03:56:09
【问题描述】:
我有 foreach 循环,我试图将从包含 id 的 sql 中获取的对象分配给我的列表模型,其中该项目必须是 int。
foreach (DataRow item in dtbProduct.Rows)
{
PaymentsList.Add(new Payments()
{
PaymentID = item["p_ID"],
在这种情况下我得到语法错误
不能简单地将 objecto 转换为 int
但如果我写
PaymentID = int.Parse(item["p_ID"].ToString()),
项目运行但我收到运行时错误
System.FormatException: '输入字符串的格式不正确。'
【问题讨论】:
-
item["p_ID"].ToString()的值是多少? -
向我们展示 item["p_ID"].ToString() 的值
-
p_ID 是什么数据类型?由于它可能用作数据库中的主键,我假设这是一个 int64?在这种情况下使用 int64.Parse()
-
你试过 Convert.ToInt64(item["p_Id"]) 吗??
-
做到了,但语法说不能将 long 隐式转换为 int
标签: c# sql type-conversion int