2010-12-19 1 views
2

Je crée une fonction qui recherche un tableau de clients et retourne un objet client par un ID donné. J'essaie de le faire avec Lambda expressions, ce qui est ce que j'ai jusqu'à présent:Rechercher un élément dans un tableau d'objets VB.NET

Public Shared Function FindCustomer(ByVal ID As Integer) As cCustomer 

    Dim customer as New cCustomer = _ _ 
      Array.Find(arrCustomers, Function(c as cCustomer) c.ID = ID) 

    Return customer 

End Function 

Cependant, cela jette une exception nulle référence à « c », et je ne sais pas comment résoudre ce , toute aide est la bienvenue :).

EDIT: Je reçois l'erreur quand je l'appelle la fonction comme:

dim cust as New cCustomer 
cust = FindCustomer(5) 
MsgBox(cust.Name) 
'BANG 

Thx.

Répondre

1

L'un des clients de votre baie est null.

+1

Ou un élément qui n'est pas un clientC. Même problème en C# et VB.NET. –

+0

@Hans: Non; il n'a pas de 'TryCast'. – SLaks

+0

Oups ... J'ai fait quelque chose de mal en remplissant mon tableau de client, problème résolu, merci !. – Carlos

Questions connexes