可以用LINQ重写得更好吗?我是一个尝试用VB思考的c#程序员。. NET用于当前项目。它在ASP中。. NET Web Forms .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
您可以使用SelectMany
来扁平化这样的集合。
var array = arrayOfArrays.SelectMany(item => item).Distinct().ToArray(); // C#
Dim array = arrayOfArrays.SelectMany(Function(item) item).Distinct().ToArray() // VB