Public Shared Function RetrieveProject(ByVal predicate As Expression(Of Func(Of DataAccess.Project, Boolean))) As List(Of Entity.Project)
Using dataContext As New DataAccess.ProjectManageDataContext(ConnString)
dataContext.ObjectTrackingEnabled = False
Dim result = From p In dataContext.Projects.Where(predicate) _
...
Select New Entity.Project With { _
.ProjectId = p.ProjectId, _
...
}
Return result.ToList
End Using
End Function
Public Shared Sub UpdateProject(ByVal predicate As Expression(Of Func(Of DataAccess.Project, Boolean)), ByVal action As Action(Of DataAccess.Project, Entity.Project), ByVal ep As Entity.Project)
Using dataContext As New DataAccess.ProjectManageDataContext(ConnString)
Dim projects = From p In dataContext.Projects.Where(predicate)
For Each project In projects
action(project, ep)
Next
dataContext.SubmitChanges()
End Using
End Sub
Public Shared Function InsertProject(ByVal project As Entity.Project) As Integer
Using dataContext As New DataAccess.ProjectManageDataContext(ConnString)
Dim dbProject As New DataAccess.Project
dbProject.DutyOrganization = project.DutyOrganization
...
dataContext.Projects.InsertOnSubmit(dbProject)
dataContext.SubmitChanges()
Return dbProject.ProjectId
End Using
End Function
Public Shared Sub DeleteProject(ByVal predicate As Expression(Of Func(Of DataAccess.Project, Boolean)))
Using dataContext As New DataAccess.ProjectManageDataContext(ConnString)
dataContext.Projects.DeleteAllOnSubmit(dataContext.Projects.Where(predicate))
dataContext.SubmitChanges()
End Using
End Sub