2011-08-16 12 views
5

Próbuję przekonwertować poniższe na vb.net. Dzięki z góryNie można przekonwertować tego na VB.net

Categories.DataSource = objDT.Rows.Cast<DataRow>() 
     .Select(r => new { Attendee = r.Field<string>("Attendee"), Item = r.Field<string>("Item") }) 
     .GroupBy(v => v.Attendee) 
     .Select(g => new { Attendee = g.Key, Item = g.ToList() }); 

To gdzie ja utknąć, próbowałem dwóch różnych metod, ale nadal nic nie działa:

Categories.DataSource = objDT.AsEnumerable() _ 
    .Select(Function(r) New With {.Attendee = r.Field(Of String)("Attendee"), .Item = r.Field(Of String)("Item")}) _ 
    .GroupBy(Function(v) v.Field(Of String)("Attendee")) _ 
    .Select(Function(g) Attendee = g.Key) 

lub

Categories.DataSource = objDT.Rows.Cast(Of DataRow)().AsEnumerable _ 
    .Select New Object(){ Function(r As DataRow) Attendee = r.Field(Of String)("Attendee"), Item = r.Field(Of String)("Item")} _ 
.GroupBy(Function(v) v.Category) _ 
.Select(Function(g) new { Category = g.Key, Numbers = g.ToList() } 

Odpowiedz

0

Spróbuj tego:

Categories.DataSource = objDT.Rows.Cast(Of DataRow)().Select(Function(r) New With { _ 
.Attendee = r.Field(Of String)("Attendee"), _ 
.Item = r.Field(Of String)("Item") _ 
}).GroupBy(Function(v) v.Attendee).Select(Function(g) New With { _ 
.Attendee = g.Key, _ 
.Item = g.ToList() _ 
}) 

Object Class (New Object() {Z}) jest inny niż typ anonimowy (New With {}).

Możesz korzystać z tej strony w przyszłości: http://www.developerfusion.com/tools/convert/csharp-to-vb/. Działa całkiem dobrze w przypadku większości konwersji.

+0

Dziękuję Matthieu, ta metoda zadziałała! Zapamiętaj, aby wypróbować powyższy link konwersji. – user896917

0

Spróbuj następującą

Categories.DataSource = objDT.Rows.Cast(Of DataRow)() _ 
    .Select(Function(r) New With {.Attendee = r.Field(Of String)("Attendee"), .Item = r.Field(Of String)("Item")}) _ 
    .GroupBy(Function(v) v.Attendee) _ 
    .Select(Function(g) New With { .Attendee = g.Key, .Item = g.ToList()}) 
+0

Dziękuję JaredPar, że twoje rozwiązanie zadziałało równie dobrze! Którym mogę również dać zielony znacznik wyboru. Dzięki :) – user896917

Powiązane problemy