Travailler avec des type Object c'est faire des liaisons tardives donc risquer des bug. Exemple :
If (CType(o.GetType().GetProperty("Id").GetValue(o, Nothing), Integer) = id) Then
Si tu fais une faute de frappe sur "Id" le compilateur ne va rien dire et à l'exec ça va crasher. Tu perds tout l'interêt de l'IntelliSense de l'IDE.
De plus les opération de Cast (CType-TryCast-DirectCast) sont des opération couteuse en ressources...
Bref comme le disait smyley ça fonctionne mais c'est pas top du tout.
Ne connaissant pas cette syntaxe pour le With "newTrainerList.Add(New With {.Id = id})". J'ai copié collé le code et chez moi il n'en veut pas du With.
C'est du VB 2008 ? Ici je suis en 2005.
Partager