Created
April 20, 2018 20:40
-
-
Save CodeHeight/84a8aae3fe5b504ee7619a827bb93abc to your computer and use it in GitHub Desktop.
Multiple List objects in One object
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Namespace Models | |
Public Class SkeletonOne | |
Public Property Id As String | |
Public Property Abbreviation As String | |
Public Property Date As String | |
End Class | |
Public Class SkeletonTwo | |
Public Property Id As String | |
Public Property Abbreviation As String | |
Public Property Date As String | |
Public Property Notes As String | |
End Class | |
Public Class SkeletonThree | |
Public Property Id As String | |
Public Property Notes As String | |
End Class | |
'Special class to encapsulate all data for Skeletons | |
Public Class SkeletonModel | |
Public Property _skeletonOne As List(Of SkeletonOne) | |
Public Property _skeletonTwo As List(Of SkeletonTwo) | |
Public Property _skeletonThree As List(Of SkeletonThree) | |
End Class | |
End Namespace |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Partial Class Skeleton_SkeletonHistory | |
Inherits System.Web.UI.Page | |
Dim _skeletonService As New SkeletonService | |
Dim skeletonId As String | |
Dim count As Integer | |
'First: load Object | |
Dim _skeletons As New Models.SkeletonModel | |
_skeletons = _skeletonService.GetAllSkeletons(skeletonId) | |
'Now use LINQ to query objects | |
count = _skeletons._skeletonOne.Where(Function(x) x.Id = 12345).Count() | |
If Not (count = 0) Then | |
For value As Integer = 0 To count - 1 | |
Dim skeleton_one As New Models.SkeletonOne | |
Dim skeleton_two As New Models.SkeletonTwo | |
skeleton_one = _skeletons._skeletonOne.Where(Function(x) x.Id = 12345)(value) | |
If Not skeleton_one Is Nothing Then | |
skeleton_two = _skeletons._skeletonTwo.FirstOrDefault(Function(x) x.Id = skeleton_one.Id And Convert.ToDateTime(x.Date) = Convert.ToDateTime(skeleton_one.Date)) | |
If Not skeleton_two Is Nothing Then | |
litBuildTree.Text = litBuildTree.Text + "<li data-jstree='{"icon" : "fa fa-circle " }'><a href='../skeleton/skeleton_details.aspx?id=" & skeletonId & "&skeleton1=" & skeleton_one.Id & "&skeletondate=" & Convert.ToDateTime(skeleton_one.Date).ToString("MM/dd/yyyy") & "'><span style='color:red'>" & skeleton_one.Abbreviation & "</span> <sup>prime</sup> (" & Convert.ToDateTime(skeleton_one.Date).ToString("MM/dd/yyyy") & ")</a></li>" | |
Else | |
litBuildTree.Text = litBuildTree.Text + "<li data-jstree='{"icon" : "fa fa-circle " }'><a href='../skeleton/skeleton_details.aspx?id=" & skeletonId & "&skeleton1=" & skeleton_one.Id & "&skeletondate=" & Convert.ToDateTime(skeleton_one.Date).ToString("MM/dd/yyyy") & "'><span style='color:blue'>" & skeleton_one.Abbreviation & "</span> <sup>prime</sup> (" & Convert.ToDateTime(skeleton_one.Date).ToString("MM/dd/yyyy") & ")</a></li>" | |
End If | |
End If | |
Next | |
End If | |
litBuildTree.Text = litBuildTree.Text & "</ul></li>" | |
End Class |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Public Class SkeletonRepository | |
Dim oraconn As OracleConnection | |
Dim oracmd As OracleCommand | |
Dim constring As String = ConnectionStrings.GetConnection().ToString() | |
Dim dr As OracleDataReader | |
Function GetSkeleton(ByVal skeletonId As Integer) As PatientVaccineHistoryChart | |
Dim _skeletons As New SkeletonModel | |
Dim skeleton_one As New List(Of SkeletonOne) | |
Dim skeleton_two As New List(Of SkeletonTwo) | |
Dim skeleton_three As New List(Of SkeletonThree) | |
oraconn = New OracleConnection(constring) | |
Dim get_skeletonOne As OracleCommand | |
Dim get_skeletonTwo As OracleCommand | |
Dim get_skeletonThree As OracleCommand | |
Try | |
oraconn.Open() | |
get_skeletonOne = New OracleCommand("oracledb.p_skeletons.get_skeleton_one", oraconn) | |
get_skeletonOne.CommandType = CommandType.StoredProcedure | |
get_skeletonOne.Parameters.Add(New OracleParameter("p_skeleton_id", OracleDbType.Int32, 10)).Direction = ParameterDirection.Input | |
get_skeletonOne.Parameters("p_skeleton_id").Value = skeletonId | |
get_skeletonOne.Parameters.Add(New OracleParameter("p_err_code", OracleDbType.Int32, ParameterDirection.Output)) | |
get_skeletonOne.Parameters.Add("p_err_msg", OracleDbType.Varchar2, 250).Direction = ParameterDirection.Output | |
get_skeletonOne.Parameters.Add(New OracleParameter("p_skeleton_cursor", OracleDbType.RefCursor, ParameterDirection.Output)) | |
get_skeletonOne.ExecuteNonQuery() | |
dr = DirectCast(get_skeletonOne.Parameters("p_skeleton_cursor").Value, Types.OracleRefCursor).GetDataReader() | |
While dr.Read | |
Dim skeleton As New SkeletonOne | |
skeleton.Id = dr("skeleton_id").ToString | |
skeleton.Abbreviation = dr("skeleton_abbr").ToString | |
skeleton.Date = dr("skeleton_date").ToString | |
skeleton_one.Add(skeleton) | |
End While | |
dr.Close() | |
get_skeletonOne.Dispose() | |
get_skeletonTwo = New OracleCommand("oracledb.p_skeletons.get_skeleton_two", oraconn) | |
get_skeletonTwo.CommandType = CommandType.StoredProcedure | |
get_skeletonTwo.Parameters.Add(New OracleParameter("p_skeleton_id", OracleDbType.Int32)).Direction = ParameterDirection.Input | |
get_skeletonTwo.Parameters("p_skeleton_id").Value = skeletonId | |
get_skeletonTwo.Parameters.Add("p_err_code", OracleDbType.Int32, ParameterDirection.Output) | |
get_skeletonTwo.Parameters.Add("p_err_desc", OracleDbType.Varchar2, 250).Direction = ParameterDirection.Output | |
get_skeletonTwo.Parameters.Add(New OracleParameter("p_skeleton_cursor", OracleDbType.RefCursor, ParameterDirection.InputOutput)) | |
get_skeletonTwo.ExecuteNonQuery() | |
dr = DirectCast(get_skeletonTwo.Parameters("p_skeleton_cursor").Value, Types.OracleRefCursor).GetDataReader() | |
While dr.Read | |
Dim skeleton As New SkeletonTwo | |
skeleton.Id = dr("skeleton_id").ToString | |
skeleton.Date = dr("skeleton_date").ToString | |
skeleton.Abbreviation = dr("skeleton_abbr").ToString | |
skeleton.Notes = dr("skeleton_Notes").ToString | |
skeleton_two.Add(skeleton) | |
End While | |
dr.Close() | |
get_skeletonTwo.Dispose() | |
get_skeletonThree = New OracleCommand("oracledb.p_skeletons.get_skeleton_three", oraconn) | |
get_skeletonThree.CommandType = CommandType.StoredProcedure | |
get_skeletonThree.Parameters.Add(New OracleParameter("p_patient_id", OracleDbType.Int32, 10)).Direction = ParameterDirection.Input | |
get_skeletonThree.Parameters("p_patient_id").Value = patientId | |
get_skeletonThree.Parameters.Add(New OracleParameter("p_err_code", OracleDbType.Int32, ParameterDirection.Output)) | |
get_skeletonThree.Parameters.Add("p_err_msg", OracleDbType.Varchar2, 250).Direction = ParameterDirection.Output | |
get_skeletonThree.Parameters.Add(New OracleParameter("p_skeleton_cursor", OracleDbType.RefCursor, ParameterDirection.InputOutput)) | |
get_skeletonThree.ExecuteNonQuery() | |
dr = DirectCast(get_skeletonThree.Parameters("p_skeleton_cursor").Value, Types.OracleRefCursor).GetDataReader() | |
While dr.Read | |
Dim skeleton As New SkeletonThree | |
SkeletonThree.Id = dr("skeleton_id").ToString | |
SkeletonThree.Notes = dr("skeleton_Notes").ToString | |
skeleton_three.Add(Skeleton) | |
End While | |
dr.Close() | |
get_skeletonThree.Dispose() | |
_skeletons._skeletonOne = skeleton_one | |
_skeletons._skeletonTwo = skeleton_two | |
_skeletons._skeletonThree = skeleton_three | |
Return _skeletons | |
Catch ex As OracleException | |
Throw | |
Finally | |
If oraconn.State = ConnectionState.Open Then | |
oraconn.Close() | |
End If | |
oraconn.Dispose() | |
End Try | |
End Function | |
End Class |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Public Class SkeletonService | |
Dim _skeletonRepository As New SkeletonRepository | |
Public Function GetAllSkeletons(ByVal Id As String) As Models.SkeletonModel | |
Dim _skeletonModel As New SkeletonModel | |
If Id = "" Then | |
Id = "0" | |
End If | |
_skeletonModel = _skeletonRepository.GetSkeleton(CInt(Id)) | |
Return skeletonModel | |
End Function | |
End Class |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment