J'ai DataTable
et son filtre par DataView
et RowFilter utilisant la chaîne. Cela fonctionne bien. Mais quand Sting créer une énorme ligne, alors l'exception stackoverflow est DataView
.Exception levée en utilisant le filtre
dv.RowFilter = strFilter
Chaîne strFilter est comme ci-dessous. filtrer seulement par la Division deux colonnes et emplacement
strFilter=([Division] LIKE ('Division 2') or [Division] LIKE ('%|Division 2') or [Division] LIKE ('%|Division 1') AND [Location] LIKE ('%Location1') or [Location] LIKE ('Locaion2|%').....
Au lieu de RowFilter j'utilisé LINQ
, mais ce ne est pas retourné à la bonne table
Dim query = dv.Table.AsEnumerable().Where(Function(m) strFilterOption.Contains(m.Field(Of String)("Division")) AndAlso strFilterOption.Contains(m.Field(Of String)("Location")))
dv = query.AsDataView()
Dim dtFillData As DataTable=dv.ToTable
Comment puis-je faire cela en utilisant LINQ
ou toute autre solution?
Merci à l'avance
Eh bien, commencez à utiliser 'OrElse' au lieu de' AndAlso'. –