' Visual Basic 2008 9.0 .NET Examples - Anonymous Types - New in Visual Basic 2008 - 9.0 : Option Infer On Option Strict On Class Example1 Public Shared Sub Main() Dim address1 = New With {.City = "New York", .Street = "Parklane"} Console.WriteLine(address1.City) Console.WriteLine(address1.Street) ' Dim address2 = New With {.City = "London", .Street = "Oxford Street"} Console.WriteLine(address2.City) Console.WriteLine(address2.Street) ' Dim address3 = New With {.City = "San Fransico", .Street = 10} Console.WriteLine(address3.City) Console.WriteLine(address3.Street) ' Dim address4 = New With {.City = "Paris"} Console.WriteLine(address4.City) ' Dim city As String = "Brussels" Dim address5 = New With {city} ' (1) Console.WriteLine(address5.City) address5.City = "Amsterdam" Console.WriteLine(address5.City) ' Dim someInstance As New SomeFirstClass Dim address6 = New With {someInstance.City, someInstance.Street()} Console.WriteLine(address6.City) Console.WriteLine(address6.Street) ' Dim address7 = New With {someInstance.City, someInstance.Street(), _ someInstance.Number} ' (2) Console.WriteLine(address7.City) Console.WriteLine(address7.Street) Console.WriteLine(address7.Number) ' Dim address8 = New With {SomeSecondClass.City, SomeSecondClass.Street, _ SomeSecondClass.Number} ' (3) Console.WriteLine(address8.City) Console.WriteLine(address8.Street) Console.WriteLine(address8.Number) ' Console.WriteLine(address1.GetType().Equals(address2.GetType())) Console.WriteLine(address1.GetType().Equals(address3.GetType())) Console.WriteLine(address1.GetType().Equals(address4.GetType())) Console.WriteLine(address4.GetType().Equals(address5.GetType())) Console.WriteLine(address1.GetType().Equals(address6.GetType())) ' Console.ReadLine() End Sub End Class Class SomeFirstClass Public Number As Integer Public ReadOnly Property City() As String Get City = "someCity" End Get End Property Public Function Street() As String Street = "someStreet" End Function End Class Class SomeSecondClass Public Shared Number As Integer Public Shared ReadOnly Property City() As String Get City = "someCity" End Get End Property Public Shared Function Street() As String Street = "someStreet" End Function End Class ' Visit www.studyvb.com for more examples. Copyright 2003-2008 De Wolf.