Как использовать OleDbDataReader для чтения значения при нажатии флажка в Asp.net
Вот моя функция, позволяющая DataReader проверять столбец в моей базе данных. Флажок находится в строке GridView, и функция не возвращает значений из считывателя. Что не так с моей функцией, и я даже делаю это правильно? Спасибо!
Protected Function CheckForms() As String
Dim row As GridViewRow
Dim formStatus As String = "blank"
Dim ID As Integer
Dim status1 As String
Dim reader As OleDbDataReader = Nothing
Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\wfccdb\datagridview\app_data\t3corp.mdb;")
conn.Open()
Dim readerCMD As New OleDbCommand("Select * FROM customers WHERE ReferenceID=@ID", conn)
For Each row In ThreeDayGridview.Rows
Dim cb As CheckBox = row.FindControl("CheckBox2")
If cb.Checked Then
ID = Convert.ToInt32(ThreeDayGridview.DataKeys(row.RowIndex).Value)
readerCMD.Parameters.AddWithValue("@ID", ID)
reader = readerCMD.ExecuteReader()
If reader.HasRows Then
While reader.Read
status1 = reader("FormReceived")
If status1 = "No" Then
formStatus = "No"
ElseIf status1 = "Yes" Then
formStatus = "Yes"
Else
formStatus = ""
End If
End While
Else
formStatus = "Nothing"
End If
Return formStatus
End If
Next
End Function
Цель этой функции - проверить состояние столбца "Форма получена" в моей базе данных. Статус будет пустым, "Да" или "Нет".
Выходные данные функции "пустые", когда должно быть "Да", "Нет" или ""
Кроме того, я использую функцию javascript, чтобы определить, является ли formStatus пустым. Вот моя функция Javascript:
<script language="javascript" type="text/javascript">
function ConfirmOn3Day() {
var formStatus = '<%= CheckForms() %>';
document.write(formStatus);
if (formStatus != "") {
if (confirm("Send to All Completed?") == true) {
__doPostBack('ThreeDayGridview_ctl02_CheckBox2');
return true;
} else {
return false;
}
} else {
alert("Error");
}
}
</script>
Редактировать: Я полагаю, что ошибка вызвана, когда я запускаю свою функцию Javascript: "ConfirmOn3Day()" Я протестировал свою функцию "CheckForms()", и она выдает правильные значения. Но когда я вызываю свою функцию Javascript
OnCheckedChanged="CheckBox2_CheckedChanged" onclick="return ConfirmOn3Day();" />
Возвращает "пустое" значение. Как я могу изменить это так, чтобы мой Javascript извлекал правильное значение из моей функции CheckForms ()?