Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Actualités

  • Blog de Cyril DURAND, passionné de JavaScript, Ajax, ASP.net et tout ce qui touche au developpement Web Client-Side.

    View Cyril Durand's profile on LinkedIn

    hit counters

WebResource et PerformSubstitution

Les WebResources vous connaissez ? non ? ASP.net 2.0 donne la possibilité de mettre les fichiers de ressources, comme les fichiers JavaScript directement en ressource dans l'assembly. Pour cela dans Visual Studio il suffit de mettre le Build Action a Embedded Resource.

Build Action : Embedded Resource

Puis rajouté l'attribut d'assembly WebResouce comme cela :

[assembly: WebResource("Itelios.Web.UI.NeoGlobe.js", "text/javascript")]

Vous pouvez ajouter votre fichier JavaScript en utilisant la méthode

Page.ClientScript.RegisterClientScriptInclude("Neoglobe", Page.ClientScript.GetWebResourceUrl(typeof(Neoglobe), "Itelios.Web.UI.NeoGlobe.js"));

A noter que si vous utilisez Atlas Microsoft Ajax et que votre contrôle hérite de ScriptControl vous pouvez utiliser la méthode GetScriptReferences

protected override System.Collections.Generic.IEnumerable<ScriptReference> GetScriptReferences() { ScriptReference reference = new ScriptReference("Itelios.Web.UI.NeoGlobe.js", "Itelios.Neoglobe"); List<ScriptReference> list = new List<ScriptReference>(); list.Add(reference); return list; }

Sans oublier de l'enregister comme ScriptControl dans le ScriptManager associé à la page:

ScriptManager.GetCurrent(Page).RegisterScriptControl<NeoGlobe>(this);

Mais si dans votre fichier JavaScript vous avez besoin de connaitre l'url d'une image elle aussi contenu en ressource de votre assembly, comment faire ? Les urls des fichiers de ressources ne sont pas prédictible vous ne pouvez donc pas les coder en dur dans le fichier JavaScript, vous devez alors utiliser l'argument PerformSubstitution de l'attribut WebResource :

[assembly: WebResource("Itelios.Web.UI.NeoGlobe.js", "text/javascript", PerformSubstitution=true)]

Pour avoir accès à l'url de cette ressource dans le fichier JavaScript il vous faut utiliser cette syntaxe :

debug.trace('<%=WebResource("Itelios.Web.UI.dotnet.gif")%>');

Pour en savoir plus sur les WebResource et le paramètre PerformSubstitution : WebResourceAttribute.PerformSubstitution Property

Posted: dimanche 24 décembre 2006 02:33 par cyril
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

Pas de commentaires

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- Un outil pour réaliser des animations WPF basées sur des équations de Bézier par Perspective le il y a 2 heures et 34 minutes

- Sandcastle et CodePlex : le verdict par CoqBlog le il y a 3 heures et 25 minutes

- Webcasts sur le Parallel Framework disponibles par Matthieu MEZIL le il y a 6 heures et 53 minutes

- [Silverlight] - Comprendre et Débuter avec Silverlight par Danuz le il y a 11 heures et 38 minutes

- SharePoint : Nouvel article sur l'exportation et Importation de sites SharePoint par Blog Technique de Romelard Fabrice le il y a 23 heures et 19 minutes

- ImagineCup 2008 Final in Paris: Day 1 par Richard Clark le 07-03-2008, 22:48

- PowerShell : Comment utiliser un ENUM .NET dans un script PowerShell par Blog Technique de Romelard Fabrice le 07-03-2008, 18:09

- OU SONT LES VISITEURS DE MON SITE ? par Nix's Blog le 07-03-2008, 15:07

- PowerShell : Quelques outils de développement adaptés par Blog Technique de Romelard Fabrice le 07-03-2008, 14:50

- [DevWeb] "FireFox est lent quand je developpe en local ?" par The diary of EBArtSoft le 07-03-2008, 14:47