vb.net Object Initialiser List(Of T)
Posted
by
Tim B James
on Stack Overflow
See other posts from Stack Overflow
or by Tim B James
Published on 2010-07-15T09:22:09Z
Indexed on
2011/01/02
2:54 UTC
Read the original article
Hit count: 340
I have been looking at some C# code:
List<Employee> Employees = new List<Employee>{
new Employee{firstname="Aamir",lastname="Hasan",age=20},
new Employee{firstname="awais",lastname="Hasan",age=50},
new Employee{firstname="Bill",lastname="Hasan",age=70},
new Employee{firstname="sobia",lastname="khan",age=80},
};
Now when I convert this to vb.net
Dim Employees as List(Of Employee) = New List(Of Employee)() With { New Employee() With { _
.firstname = "Aamir", _
.lastname = "Hasan", _
.age = 20 _
}, _
New Employee() With { _
.firstname = "awais", _
.lastname = "Hasan", _
.age = 50 _
}, _
New Employee() With { _
.firstname = "Bill", _
.lastname = "Hasan", _
.age = 70 _
}, _
New Employee() With { _
.firstname = "sobia", _
.lastname = "khan", _
.age = 80 _
} _
}
I get the error "Name of field or property being initialized in an object initializer must start with'.'."
Now I can get an array of employee using the code:
Dim Employees = { New Employee() With { _
.FirstName = "Aamir", _
.LastName = "Hasan", _
.Age = 20}, _
New Employee() With { _
.FirstName = "Awais", _
.LastName = "Hasan", _
.Age = 50}, _
New Employee() With { _
.FirstName = "Bill", _
.LastName = "Hasan", _
.Age = 70 _
} _
}
But I would like a List(Of Employee)
as it is bugging me as to why this doesnt work in vb.net?
© Stack Overflow or respective owner