Visibilité d'une classe .Net dans une dll [Résolu]

billou_13
Messages postés
874
Date d'inscription
jeudi 4 mars 2004
Dernière intervention
19 août 2014
- 29 juin 2007 à 11:56 - Dernière réponse : billou_13
Messages postés
874
Date d'inscription
jeudi 4 mars 2004
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
---------------------
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
cs_Bidou
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Dernière intervention
20 juin 2013
- 29 juin 2007 à 11:59
3
Merci
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-

Merci cs_Bidou 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de cs_Bidou
Meilleure réponse
Lutinore
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Dernière intervention
27 octobre 2012
- 29 juin 2007 à 12:07
3
Merci
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.

Merci Lutinore 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de Lutinore
billou_13
Messages postés
874
Date d'inscription
jeudi 4 mars 2004
Dernière intervention
19 août 2014
- 29 juin 2007 à 13:02
0
Merci
Billou_13
Bask En Force

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

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.