以下のコードをご覧ください。
Public Class PersonTest
Public Function ListTest()
Dim list As List(Of Person) = New List(Of Person)
Dim p1 As Person = New Person(1, "Ian")
Dim p2 As Person = New Person(2, "Steven")
Dim p3 As Person = New Person(3, "Sharon")
list.Add(p1)
list.Add(p2)
list.Add(p3)
For Each p As Person In list
MsgBox(p.IDNumber)
Next
End Function
End Class
Public Class Person
Public IDNumber As Integer
Public Name As String
Public Sub New(ByVal id As Integer, ByVal name As String)
IDNumber = id
name = name
End Sub
End Class
Public Class Form1
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim pt As PersonTest = New PersonTest
pt.ListTest()
End Sub
End Class
私はメッセージボックスが印刷することを期待しています:1,2,3それはそうします。リストが挿入順序を使用していることを確認できますか。データベースクエリの結果をリストに保存することを計画しています。
SELECT * FROM Person ORDER BY ID
SQLステートメントはID順に並べられています。リストもID順に並べられると思いますか?
私が尋ねる理由は、ここでの私の質問に対する回答者が次のとおりです。データアクセス層はDataTableを返し、リストを使用してデータアクセス層からオブジェクトを返すことを提案します。