Visibilité d'une classe .Net dans une dll

Résolu
billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 - 29 juin 2007 à 11:56
billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 - 29 juin 2007 à 13:02
Bonjour,


Alors voila, j'ai développé une dll en C# et je l'utilise sur une application windows form. Pour des raisons de clarté, je voudrais cependant caché certaines classes de ma dll au développeur de l'application.
J'ai vu que le mot clé internal servait à cela. Pourtant, cela ne fonctionne pas dans mon cas.

Exemple:
J'ai une classe Animal déclarée de la facon suivante:

internal abstract classAnimal    //Je voudrais la rendre invisible
{
}

et une class dérivant de celle ci:

public classChien : Animal    //Je voudrais la rendre visible
{
}

Et la, c'est le drame : ca ne compile pas.
Je ne peux pas rendre invisible une classe mère (ce qui m'intéresse la plupart du temps) sans impacter la compilation.

Alors, je m'en remets à vous. Quelqu'un aurait-il une idée ?

Merci d'avance,

Bonne journée

Billou_13
Bask En Force

--------------------------------------------------------------------
Connaître la réponse est une chose, savoir pourquoi en est une autre
---------------------

3 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
29 juin 2007 à 11:59
Salut,
C'est pas possible !
Si tu utilises une class enfant, alors la class mère doit avoir au minimum la même visibilité....

<hr />
-Blog-
3
Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
29 juin 2007 à 12:07
Salut, tu ne peux pas la rendre invisible mais tu peux déclarer le constructeur de ta classe abstraite "internal", ainsi elle ne pourra pas être derivée en dehors de ta dll.
3
billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 29
29 juin 2007 à 13:02
Billou_13
Bask En Force

--------------------------------------------------------------------
Connaître la réponse est une chose, savoir pourquoi en est une autre
---------------------
0
Rejoignez-nous