2010-01-06 5 views
0

Je sais que c'est une question très basique, mais pardonnez-moi si j'ai fait quelque chose de mal. J'ai une relation plusieurs-à-plusieurs avec <set>. Quand je débogue le code, je peux voir les données dans le "set", mais je ne suis pas sûr de savoir comment afficher les données. Par exemple, je pourrais utiliser "foreach" pour List, mais je ne peux pas utiliser foreach avec "ISet".NHibernate: Comment lire les données à partir de ISet

Dans ma classe:

private ISet newsList = new HashedSet(); 

    public ISet NewsList 
    { 
     get { return newsList; } 
     set { newsList = value; } 
    } 

    public void AddNews(News item) 
    { 
     NewssList.Add(item); 
    } 

peut tout fournir un exemple de code comment je peux faire face à cela.

Merci beaucoup.

Daoming

+1

Bizarre ... peut-être une référence à la mauvaise Iesi.Collections? BTW essayer le générique IESI au lieu du générique. –

Répondre

3

For example I could use "foreach" for List, but I cannot use foreach with the "ISet"

Pourquoi pas? Je vais deviner que vous avez juste besoin d'ajouter une référence à l'assembly Iesi.Collections.dll.

+0

J'ai eu cette erreur: Quand j'essaie d'utiliser foreach "foreach" instruction ne peut pas fonctionner sur des variables de type 'Iesi.Collections.ISet' car 'Iesi.Collections.ISet' ne contient pas de définition publique pour 'GetEnumerator' " –

+0

Oui, il semble que vous ayez besoin d'ajouter une référence. Le message d'erreur est un peu trompeur. –

+0

Merci beaucoup. –

0

Vous pouvez utiliser foreach avec ISet parce qu'il étend IEnumerable.

+0

J'ai cette erreur: Lorsque j'essaie d'utiliser foreach "foreach instruction ne peut pas fonctionner sur des variables de type 'Iesi.Collections.ISet' car 'Iesi.Collections.ISet' ne contient pas de définition publique pour 'GetEnumerator'" –

+1

@ Utilisateur DotNet: vérifiez vos références Iesi. ISet ** met ** en œuvre ICollection (et donc IEnumerable): https://nhibernate.svn.sourceforge.net/svnroot/nhibernate/trunk/nhibernate/src/Iesi.Collections/ISet.cs et son implémentation ** fait * * avoir un GetEnumerator(): https://nhibernate.svn.sourceforge.net/svnroot/nhibernate/trunk/nhibernate/src/Iesi.Collections/DictionarySet.cs –

Questions connexes