9
votes

Obtenir la valeur des applications Web.Config dans le marquage ASP.NET

Je pourrais être complètement hors piste d'ici, donc je vais simplement demander à cela ici afin que quelqu'un puisse m'aider.

Ce que je veux faire, c'est insérer une valeur de mon web.config, stockée dans une zone d'application, dans mon balisage ASPX. Spécifiquement, je veux lire une URL de config. Ceci est la configuration de configuration que j'utilise p> xxx pré>

plus tard dans ce fichier sont les paramètres réels tels que: p> xxx pré>

maintenant je Voulez-vous faire référence à la valeur ci-dessus dans le balisage comme ceci: p>

<asp:ScriptReference Path='<%$Code:GetAppSetting("ResourcesUrl","JS/jquery/jquery.jqplot.js")%>'


3 commentaires

"Je pourrais être complètement hors piste d'ici" .. Je dirais que si vous stockez des liens vers des ressources d'image dans un fichier web.config, alors oui, vous êtes vraiment hors de piste.


Lors de la réflexion, je pourrait lire ce faux. Vous stockez simplement la partie de départ de la référence externe ou de l'ensemble de l'image? Qui conduit à la question suivante: Est-ce nécessaire pour prendre en charge plusieurs environnements (test, étape, prod)?


Oui juste la première partie de l'URL, je peux donc changer cela dans différents environnements


3 Réponses :


0
votes

Je ne suis pas sûr du mors ASP.NET, mais si c'était un code normal, vous feriez myapp.properties.settings.default.imagesurl , alors essayez xxx

Il serait certainement plus facile de stocker cela dans cependant.


0 commentaires

1
votes

Cela doit-il être dans le balisage? Pourquoi ne le réglez-vous pas en code de code.

Image1.ImageUrl= //fetch your settings here.


0 commentaires

11
votes

Généralement, vous créeriez une classe de paramètres personnalisée pour lire ces valeurs telles que cette articulaire décrit. Personnellement, j'utiliserais simplement les applications comme suggéré ci-dessus, car il s'agit de la fonctionnalité existante et de ce que votre faisant de faire à la surface semble adéquat.

Cependant, sans connaître votre situation, quelle que soit votre tentative de faire pourrait être résolue sans les réglages personnalisés. Comme: p>

dans le code derrière j'ai créé une fonction protégée pour extraire le réglage P> xxx pré>

puis dans le balisage ASPX, j'appelle cette fonction p >

<asp:Label ID="Label1" runat="server" Text="<%$CustomSettings:ImagesUrl %>"></asp:Label>


3 commentaires

J'aime l'idée, mais je ne peux pas utiliser les fonctions personnalisées dans les contrôles du serveur. "Les balises de serveur ne peuvent pas contenir <% ...%> constructions"


Espérons que la section de suivi est ce que vous recherchez. Si besoin d'être je peux poster la classe entière, mais cela semblait être dirigé dans la bonne direction.


Ce n'est pas ce que j'ai mis en œuvre à la fin, mais il est arrivé de près. Le problème est que je ne peux toujours pas ajouter le nom de l'image, sauf peut-être que je puisse prendre la chaîne "Entrée" à l'écart dans l'exprbuilder ou avoir plus d'un paramètre. Donc, j'utilise maintenant un autre ExpressionBuilder que j'ai déjà eu depuis un article de blog, qui compile tout code C # valide. J'ai créé une méthode qui renvoie la chaîne d'appSeting demandée et je peux simplement concaténer le nom de l'image. <% $ Code: getAppsetting ("Ressourversurl") + "Images / Image.jpg"%>