【发布时间】:2011-08-21 22:54:21
【问题描述】:
在 C# 中,使用 SqlDataReader,有没有办法从 DB 中读取布尔值?
while (reader.Read())
{
destPath = reader["destination_path"].ToString();
destFile = reader["destination_file"].ToString();
createDir = reader["create_directory"].ToString();
deleteExisting = Convert.ToBoolean(reader["delete_existing"]);
skipIFolderDate = reader["skipifolderdate"].ToString();
useTempFile = reader["useTempFile"].ToString();
password = reader["password"].ToString();
}
在上面的代码中,delete_existing 在数据库中始终为 1 或 0。我在 MSDN 上读到 Convert.ToBoolean() 不接受 1 或 0 作为有效输入。它只接受真或假。有没有另一种方法可以将 DB 值转换为布尔值?还是我需要在 SqlDataReader 之外执行此操作?
另外,我无法更改 DB 值,所以请不要回答“将 DB 值从 1 和 0 更改为 true 和 false”。
谢谢!
【问题讨论】:
标签: c# .net sqldatareader