Select avec une list

[Résolu]
Signaler
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
-
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
-
Bonjour à tous

'J'ai une structure
Private Structure spotdata
  Public num As Integer
  Public flag As Integer
End Structure


'et une list
Private myspots As New List(Of spotdata)

Private Sub test()
  Dim aspot As New spotdata
  Dim litspots As New List(Of spotdata)
  For iter = 1 To 10
     aspot.flag = 1
     aspot.num = iter
     myspots.Add(aspot)
  Next
  For iter = 3 To 8
    aspot.flag = 0
    aspot.num = iter
    myspots.Add(aspot)
  Next

  'je voudrais recuperer tous les élements de myspots dont flag = 1 
 Try
     litspots CType(From spotvalue In myspots Select spotvalue Where spotvalue.flag 1, List(Of spotdata))
 Catch ex As Exception
      MessageBox.Show(ex.Message)
 End Try
    End Sub


le Exception est relevé

Unable to cast object of type '<WhereIterator>d__0`1[Digidots.Form1+spotdata]' to type 'System.Collections.Generic.List`1[Digidots.Form1+spotdata]'.


merci

2 réponses

Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
52
Merci
ça marche
litspots (From spotvalue In myspots Select spotvalue Where spotvalue.flag 1).ToList
Messages postés
14827
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 octobre 2021
157
Bonjour,

Et à la place de (tu ne précises pas la ligne de l'erreur)
litspots CType(From spotvalue In myspots Select spotvalue Where spotvalue.flag 1, List(Of spotdata))
Tu fais :
litspots (From spotvalue In myspots Select spotvalue Where spotvalue.flag 1).ToList()

ça passe ?

---------------------------------------------------------------------
[list][*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu, pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site