Chaque fois que j'édite un fichier de ressources dans VS, il régénère le code correspondant et définit le modificateur d'accès à la classe sur internal.
C'est pénible de Ctrl-F -> ReplaceAll chaque fois que je modifie le resx. Y a-t-il une propriété / un paramètre pour que je puisse par défaut cela en public?
internal class MyResource {
internal static global::System.Resources.ResourceManager ResourceManager {...}
}
J'ai besoin que tout cela internal
soit public
tout le temps.
c#
.net
asp.net
asp.net-mvc
visual-studio
Robin Maben
la source
la source
Réponses:
Au lieu de
ResXFileCodeGenerator
, utilisez lePublicResXFileCodeGenerator
.Vous pouvez le faire en définissant cela comme la propriété Outil personnalisé dans la fenêtre Propriétés du fichier Resx auquel vous souhaitez accéder au public.
Modifier : vous pouvez également définir le modificateur d'accès sur public lorsque vous ouvrez le fichier resx dans Visual Studio. La liste déroulante Modificateur d'accès se trouve en haut du formulaire.
la source
GlobalResourceProxyGenerator
, pas seulementResXFileCodeGenerator
; et notez aussi que le menu déroulant "Access Modofier" est souvent désactivé)PublicResXFileCodeGenerator
seul rend la classe Resources publique, pas son constructeur.Cliquez avec le bouton droit sur Fichier de ressources (
resource.resx
) => Propriétés .Outil personnalisé => Passer à
PublicResXFileCodeGenerator
la source
Le moyen le plus simple est peut-être de créer une classe dérivée avec un ctor public?
La classe générée:
La classe dérivée:
la source