2009-05-22 10 views
0

J'ai une application asp.net avec des ressources locales. Ces ressources sont utilisées dans les fichiers ASPX et code-behind:asp.net: déploiement de ressources locales - l'intégration est-elle possible?

aspx: 
<asp:TextBox ID="TextBox1" runat="server" Text="<%$ Resources:testTag %>" /> 

.vb: 
TextBox1.Text = GetLocalResourceObject("testTag").ToString 

Si je Déployez les fichiers .resx avec l'application, il n'y a aucun problème.

Toutefois, si je change l'action de construction du fichier resx en "ressource incorporée", les ressources ne sont pas disponibles, même si elles sont dans la DLL qui est créée.

Est-il possible de déployer des ressources dans une DLL ou suis-je bloqué avec la gestion des fichiers resx & sur le serveur?

+0

Avez-vous déjà résolu ce problème? J'essaye actuellement d'écrire mon propre ResourceProviderFactory pour soutenir le même scénario, mais je n'ai pas encore réussi - http://stackoverflow.com/questions/10533721/asp-net-how-to-get-assembly-from- virtual-path-in-custom-iresourceprovider-impl – Buthrakaur

Répondre

0

Oui, c'est possible.

Consultez l'exemple this codeproject. C'est un peu vieux, mais toujours valide.

Un autre exemple, à partir de Microsoft, est here.

MISE À JOUR

Pour être honnête, je n'ai pas allé jusque-là avec nos propres encore Localisations (nous utilisons toujours les fichiers de ressources normalement intégrés); Cependant, here is a link à un exemple sur la façon d'obtenir le gestionnaire de ressources accessible à partir de votre page ASPX. C'est le dernier message de ce sujet.

GeorgeZ déclare de charger le gestionnaire de ressources dans la méthode page_init. Je suis sûr que vous pourriez mettre cela dans un certain type de BasePage dont toutes vos pages héritent afin de ne pas l'avoir directement dans tous leurs backs de code.

+0

Il ne semble pas y avoir moyen de gérer les chaînes localisées dans la page aspx en utilisant ce mécanisme. Nous avons une tonne d'étiquettes qui ne sont jamais touchées dans le code-behind, mais qui ont encore besoin d'afficher des valeurs localisées. – chris

Questions connexes