C# 如何更新数据表结果中的元素?

C# 如何更新数据表结果中的元素?,c#,asp.net,C#,Asp.net,我想为数据表中的数据提交显示性别名称。我的代码是 dt = new data().Get_Data(Id); foreach (DataRow row in dt.Rows) { bool gender = clsCommon.ParseBool(row["Gender"].ToString()); //if (gender) // row["Gender"] = "Male";

我想为数据表中的数据提交显示性别名称。我的代码是

 dt = new data().Get_Data(Id);

        foreach (DataRow row in dt.Rows)
        {
            bool gender = clsCommon.ParseBool(row["Gender"].ToString());

            //if (gender)
               // row["Gender"] = "Male";

           // else
               // row["Gender"] = "Female";
        }
问题是,如何根据数据表更改结果中的项数查找性别的行索引取决于选中的复选框。我必须将真值更新为男性,反之亦然

我想通过取消对上述代码的注释来更新第[“Gender”]=“male”行 出现以下错误“字符串未被识别为有效的布尔值。”


因此,
DataColumn
Gender
的类型是
bool
,而不是
string
。因此,首先将其更改为
string
,或者使用第二列作为字符串表示形式

假设
Get_Data
返回从数据库填充的
DataTable
。然后,最好的方法是为您的
bool
选择所需的
字符串,例如:

SELECT Id, Col1, Col2, Col3, 
       CASE WHEN Gender=1 THEN 'Male' ELSE 'Female' END AS Gender
FROM dbo.Data
WHERE Id = @Id

你的问题不清楚。什么类型是性别?是否要根据此列的旧值使用新值更新此列?问题是什么,为什么您的out注释代码不起作用?我想更新行[“Gender”]=“male”,并通过取消注释上面的代码,出现以下错误“String未被识别为有效的布尔值”。因此,
DataColumn
Gender
的类型是
bool
,而不是
String
。所以,首先将其更改为
string
,或者使用第二列作为字符串表示形式。在数据库中保存性别值的格式是什么