问候.
我有MS SQL服务器数据库那个BIT
类型的内容数据字段.
本场将有两种0
或1
值存在虚假和真实.
我希望当我检索数据以转换我有false
或true
没有使用if-condition的值来转换数据时,false
如果它是0
或true
如果它1
.
我想知道C#中是否有一个函数会直接通过传递位值来做到这一点?
DataReader.GetBoolean(x)
要么
Convert.ToBoolean(DataRow[x])
根据您执行SQL查询的方式,它可能取决于您.例如,如果您有数据读取器,则可以直接读取布尔值:
using (var conn = new SqlConnection(ConnectionString)) using (var cmd = conn.CreateCommand()) { conn.Open(); cmd.CommandText = "SELECT isset_field FROM sometable"; using (var reader = cmd.ExecuteReader()) { while (reader.Read()) { bool isSet = reader.GetBoolean(0); } } }
你是如何从数据库中提取字段的?
该SqlDataReader
班有GetBoolean
其不翻译为你的方法:
bool yourBoolean = reader.GetBoolean(reader.GetOrdinal("Your_Bit_Column"));
GetBoolean将自动执行此操作.