2012-08-15 90 views
1

我試圖用LINQ從數據庫中刪除一條記錄。我給系統的行鍵刪除,它確實返回一行。如何使用linq從數據庫中刪除記錄?

這裏是我的代碼:

Public Function DeleteHydrantByKey(ByVal objDeptGUID As String, ByVal objLogonToken As String, ByVal objSesionToken As String, ByVal objHydrantKey As Integer) As String 
    'Check if Token is good 
    If CheckToken(objSesionToken, objDeptGUID) = False Then 
     Return "Session Error" 
    End If 
    'Check if login Token is good 
    If CheckLoginToken(objDeptGUID, objLogonToken) = False Then 
     Return "Logon Session Error" 
    End If 

    Try 
     Dim lbHydrants As New linqAlarmDumpDataContext 

     'Check for Hydrans in system 
     Dim GetHydrants = From r In lbHydrants.tbHydrants _ 
          Where r.key = objHydrantKey 
          Select r 

     'Check For Hydrent Data 
     If GetHydrants.Count = 0 Then 
      Return "Not Found" 
     End If 


     'Deletes Hydrent Data After Check was ok 
     lbHydrants.tbHydrants.DeleteOnSubmit(GetHydrants) 
     lbHydrants.SubmitChanges() 



     Return "OK" 
    Catch ex As Exception 
     Return "Error" 
    End Try 
End Function 

回答

0
Public Function DeleteHydrantByKey(ByVal objDeptGUID As String, ByVal objLogonToken As String, ByVal objSesionToken As String, ByVal objHydrantKey As Integer) As String 
    'Check if Token is good 
    If CheckToken(objSesionToken, objDeptGUID) = False Then 
     Return "Session Error" 
    End If 
    'Check if login Token is good 
    If CheckLoginToken(objDeptGUID, objLogonToken) = False Then 
     Return "Logon Session Error" 
    End If 

    Try 
     Dim lqHydrants As New linqAlarmDumpDataContext 

     'Check for Hydrans in system 
     Dim GetHydrants = From r In lqHydrants.tbHydrants _ 
          Where r.key = objHydrantKey 
          Select r 

     'Check For Hydrent Data 
     If GetHydrants.Count = 0 Then 
      Return "Not Found" 
     End If 


     'Deletes Hydrent Data After Check was ok 
     lqHydrants.tbHydrants.DeleteAllOnSubmit(GetHydrants) 
     lqHydrants.SubmitChanges() 



     Return "OK" 
    Catch ex As Exception 
     Return "Error" 
    End Try 
End Function