Я пытаюсь использовать DataTable, заполненный MySqlDataAdapter, который содержит список комментариев для записи в блоге. По некоторым причинам, если для поля "анонимный" установлено значение "1", поле имени пользователя пуст и должно быть заменено указанной строкой.
Проблема заключается в том, что всякий раз, когда я пытаюсь получить значение поля, я получаю либо "истинный", либо "ложный". Мой код выглядит следующим образом:
DataTable modifiedComments = new DataTable();
// The function GetCommentsById() returns a MySqlDataAdapter with the result of the query
MySqlDataAdapter commentsContainer = Wb.Entry.GetCommentsById(imageId);
commentsContainer.Fill(modifiedComments);
commentsContainer.Dispose();
foreach (DataRow row in modifiedComments.Rows)
{
string status;
// This never returns true, so we always get into the else
if (row["anonymous"] == "1")
{
status = "You are anonymous";
}
else
{
status = "You are not anonymous";
}
}
viewImageCommentsRepeater.DataSource = modifiedComments;
viewImageCommentsRepeater.DataBind();
Поле, вероятно, является типом поля "бит", который сопоставляется с Boolean в ADO.NET
Просто проверьте true или false:
if ((bool)row["anonymous"])
...