#.net #vb.net #linq #distinct
#.net #vb.net #linq #отдельный
Вопрос:
Можно ли это переписать лучше с помощью LINQ? Я разработчик C #, пытающийся мыслить в VB.NET для этого текущего проекта. Это в ASP.NET Веб-формы .vb codebehind:
Public ReadOnly Property AllowedCategoryIds As Integer()
Get
Dim ids = New List(Of Integer)
For Each group In UserData.Current.AdGroups
'group.CategoryIDs is Integer() type
ids.AddRange(group.CategoryIDs)
Next
Return ids.Distinct()
End Get
End Property
Ответ №1:
Вы можете использовать SelectMany
для выравнивания такой коллекции.
var array = arrayOfArrays.SelectMany(item => item).Distinct().ToArray(); // C#
Dim array = arrayOfArrays.SelectMany(Function(item) item).Distinct().ToArray() // VB