【问题标题】:Importing Excel data into SQL Server using ASP.NET MVC使用 ASP.NET MVC 将 Excel 数据导入 SQL Server
【发布时间】:2020-03-07 23:31:18
【问题描述】:

我希望将 Excel 数据导入 SQL Server 表。字段值为 EmpId (int)、Name (varchar)、Dept_Id (int)、isSupervisor (bit)。我正在使用 ASP.NET MVC。

这里显示的代码是我迄今为止尝试过的:

private final GetEmployeeFromExcelRow(DataRow row)
{
    return new final
            {
                EmpId = int.Parse(row[0].ToString()),
                Name = row[1].ToString(),
                Dept_Id = int.Parse(row[2].ToString()),
                isSupervisor = Convert.ToBoolean(row[3].ToString())
            };
}

我不断收到错误

字符串未被识别为有效的布尔值。

我尝试将值插入为“True”、True 和 1。我是 ASP.NET MVC 编码的新手,这是我在这里发布的第一个问题,我们将不胜感激。

【问题讨论】:

  • 听起来row[3] 不正确。它应该是Boolean.TrueStringBoolean.FalseString。如果执行查询本身出错,请包含该代码。
  • @Zer0,在我的应用程序中,我让用户手动插入真值或假值,然后导入它们。这是一个更大项目的一部分。该代码适用于位和字符串值,仅在插入布尔数据时引发异常。谢谢。
  • 那么布尔字符串应该是“True”或“False”,区分大小写。您的问题似乎只是对row[3] 的价值不高。例如,Convert.ToBoolean("True") 应该可以正常工作。

标签: c# sql-server


【解决方案1】:

那是因为

 Convert.ToBoolean() will expect only `True` or `False`.

这些是布尔值的场景。

 "True" (String) = true
 "False" (String) = false
 "0" (String) = false      

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-26
    • 1970-01-01
    • 1970-01-01
    • 2015-01-02
    • 1970-01-01
    相关资源
    最近更新 更多