Imports System.IO
Imports System.Reflection
Imports System.Linq
Imports System.Xml.Linq
Imports System.Collections
Imports System.Collections.Generic
Public Class Project
Public ProjectID As Integer
Public ProjectName As String
Public Category As String
Public Cost As Decimal
Public YearLength As Integer
End Class
Public Class Employee
Public EmployeeID As String
Public CompanyName As String
Public Address As String
Public City As String
Public Region As String
Public PostalCode As String
Public Country As String
Public Phone As String
Public Fax As String
Public Payments As Payment()
End Class
Public Class Payment
Public PaymentID As Integer
Public PaymentDate As DateTime
Public Total As Decimal
End Class
Public Class MainClass
Public Shared Sub Main()
Dim projectList As List(Of Project) = New List(Of Project)
projectList.Add(New Project With {.ProjectID = 1, .ProjectName = "A", .Category = "Design", .Cost = 18D, .YearLength = 39})
projectList.Add(New Project With {.ProjectID = 2, .ProjectName = "B", .Category = "Testing", .Cost = 19D, .YearLength = 17})
projectList.Add(New Project With {.ProjectID = 3, .ProjectName = "C", .Category = "Coding", .Cost = 10D, .YearLength = 13})
projectList.Add(New Project With {.ProjectID = 4, .ProjectName = "D", .Category = "Meeting", .Cost = 22D, .YearLength = 53})
projectList.Add(New Project With {.ProjectID = 5, .ProjectName = "E", .Category = "Writing", .Cost = 21.35D, .YearLength = 0})
projectList.Add(New Project With {.ProjectID = 6, .ProjectName = "F", .Category = "Testing", .Cost = 25D, .YearLength = 120})
projectList.Add(New Project With {.ProjectID = 7, .ProjectName = "G", .Category = "Coding", .Cost = 30D, .YearLength = 15})
projectList.Add(New Project With {.ProjectID = 8, .ProjectName = "H", .Category = "Design", .Cost = 40D, .YearLength = 6})
projectList.Add(New Project With {.ProjectID = 9, .ProjectName = "I", .Category = "Coding", .Cost = 97D, .YearLength = 29})
Dim employeeList As List(Of Employee) = New List(Of Employee)
employeeList.Add(New Employee With {.EmployeeID = 1, .CompanyName = "Company A", .Address = "Street 1", .City = "City 1", .Region = "North"})
employeeList.Add(New Employee With {.EmployeeID = 2, .CompanyName = "Company B", .Address = "Street 2", .City = "City 2", .Region = "South"})
employeeList.Add(New Employee With {.EmployeeID = 3, .CompanyName = "Company C", .Address = "Street 3", .City = "City 3", .Region = "West"})
employeeList.Add(New Employee With {.EmployeeID = 4, .CompanyName = "Company D", .Address = "Street 4", .City = "City 4", .Region = "East"})
employeeList.Add(New Employee With {.EmployeeID = 5, .CompanyName = "Company E", .Address = "Street 5", .City = "City 5", .Region = "North"})
employeeList.Add(New Employee With {.EmployeeID = 6, .CompanyName = "Company F", .Address = "Street 6", .City = "City 6", .Region = "South"})
Dim waEmployees = From cust In employeeList _
Where cust.Region = "WA" _
Select cust
Console.WriteLine("Employees from Washington and their orders:")
For Each cust In waEmployees
Console.WriteLine("Employee " & cust.EmployeeID & ": " & cust.CompanyName)
For Each ord In cust.Payments
Console.WriteLine(" Payment " & ord.PaymentID & ": " & ord.PaymentDate)
Next
Next
End Sub
End Class
|