我想讓用戶知道他們想要刪除的數據具有值。如何通知用戶要刪除/更新的數據具有臨界值?
例如:用戶想要刪除記錄「數學」科目,但是有學生在該科目中註冊,所以用戶不能刪除記錄「數學」。
我想知道這在c#中的語法。是的,我知道如何使用「刪除」語法,但我想讓用戶知道他們想刪除的記錄有一些有價值的信息。讓用戶知道他們即將刪除關鍵數據。我知道這也可以在VB中使用
Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
If DTTable("SELECT * ", "tblSubjectsEnrolled", " WHERE CtrlNumber ='" & IDNumber & "'").Rows.Count > 0 Then
MessageBox.Show("The subject schedule cannot be deleted, because there are still students enrolled in it!", "Delete!", MessageBoxButtons.OK, MessageBoxIcon.Error)
Else
If MessageBox.Show("The operation cannot be undone! Continue?", "Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then
RecordRow("DELETE FROM [tblOfferedSubjects] WHERE [CtrlNumber]='" & IDNumber & "'")
btnSearch.PerformClick()
MessageBox.Show("Record Deleted!", "Delete", MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
SelectRecord()
End If
End If
End Sub
Public Sub RecordRow(ByVal sql As String)
Dim con As OleDb.OleDbConnection = New OleDb.OleDbConnection(conStr)
Dim cmd As New OleDb.OleDbCommand
cmd.CommandType = CommandType.Text
cmd.CommandText = sql
cmd.Connection = con
con.Open()
cmd.ExecuteNonQuery()
con.Close()
End Sub
Public Function DTTable(ByVal sql As String, ByVal tName As String, ByVal filter As String) As DataTable
Dim connection As New OleDb.OleDbConnection(conStr)
Dim dataAdapter As New OleDb.OleDbDataAdapter
Dim ds As New DataSet
dataAdapter = New OleDb.OleDbDataAdapter(sql + " from " + tName + filter, connection)
dataAdapter.Fill(ds, tName)
Return ds.Tables(tName)
End Function
我想在代碼中使用類似的東西。我也嘗試將該代碼轉換爲C#,但我無法獲得DTTable().Rows.Count> 0,因爲.Rows不能以void值開頭。有人可以幫我弄這個嗎?
我展示了可以幫助您理解問題的完整代碼片段。 PS:上面顯示的代碼不是我的。我只是用它作爲這個問題的一個例子。 PPS:
我想限制用戶刪除整個記錄。讓我們說在類別中,有子類別。如果用戶想要刪除具有子類別的類別,則不允許用戶刪除該類別,除非其中沒有任何子類別。
你應該顯示代碼的特定部分,而不是複製粘貼整個代碼文件。 – DarkKnight
@DarkKnight我已經說過我有錯誤的具體部分(DTTable().Rows.Count> 0) –