2010-09-01 9 views
1

Je définis l'attribut InternalsVisibleTo pour l'assembly friend. Dans un contrôleur, je peux accéder à la classe interne, mais si j'essaie de faire la même chose dans le fichier aspx/ascx - "la classe est inaccessible en raison de son niveau de protection".InternalsVisibleTo - ne fonctionne pas dans le fichier ascx/aspx

De toute façon je pourrais résoudre ce problème?

EDIT

Je aurais dû les choses plus claires et préciser que l'attribut était pour les fichiers de ressources qui ont généré la classe concepteur interne. Je viens de trouver que je peux changer le modificateur d'accès lors de l'édition du fichier resx.

Mais merci Darin Dimitrov pour l'explication.

Répondre

2

L'assembly qui utilisera cette classe doit être signé avec une clé publique. Comme vous parlez d'ASPX/ASCX, j'ai peur que l'assemblage soit autogénéré et non signé surtout si vous utilisez un site web par rapport à un projet d'application web. Mais la question ici est pourquoi diable auriez-vous besoin de faire quelque chose comme ça?

Vous parlez également d'un contrôleur, donc je suppose que ASP.NET MVC et si c'est le cas une vue dans ASP.NET MVC ne fonctionne qu'avec un ViewModel qui est spécifique à cette vue. Il n'a jamais besoin d'accéder à autre chose et si nécessaire il y a des helpers, etc ..., vous avez compris.