从数据行读取值

本文关键字:读取 数据 | 更新日期: 2023-09-27 18:32:58

是否可以从数据行中读取值?

我有这个代码:

bool CatchweightItem;
if (dr_art_line["CatchweightItemt"].ToString() -> READ VALUE)
{
    CatchweightItem = false;
}
else
{
    CatchweightItem = true;
}

所以我想知道是否可以读取该字段的值。如果值为 false ,则将变量设置为 false,如果为 true,则将变量设置为 true

从数据行读取值

bool CatchweightItem = Convert.ToBoolean(dr_art_line["CatchweightItemt"].ToString());

阅读此内容

您必须使用 == 运算符来检查值,如下所示:

bool CatchweightItem;
if (dr_art_line["CatchweightItemt"].ToString() == "FALSE")
{
    CatchweightItem = false;
}
else
{
    CatchweightItem = true;
}

实际上,您不需要所有这些代码,您也可以更短,更干净

bool CatchweightItem = (dr_art_line["CatchweightItemt"].ToString() == "TRUE")

如果 DataColumn 的DataType无论如何都是bool,则应使用以下强类型方法:

bool isCatchweightItem = dr_art_line.Field<bool>("CatchweightItemt");

DataRowExtensions.Field<T>方法(数据行、字符串)

它还支持可为空的类型。

 if(string.Compare(Convert.ToString(dr_art_line["CatchweightItemt"])+"","false",true)==0)
         { 
CatchweightItem = false; }
 else {  
CatchweightItem = true; } 

这将避免来自数据库的空值以及不区分大小写的检查。