mardi 9 février 2010

Comment activer l’intellisense sur les fichiers javascript

Salut à tous,

Je viens juste de lire un post que j’ai pensé qu’il serait intéressant de partager. Vous avez tous certainement déjà entendu parler de jquery et du fait qu’avec la version 1.3, il y avait un fichier vsdoc que vous pouviez télécharger pour avoir l’intellisense lors de l’écriture de javascript avec jquery. Maintenant, un patch a été publié pour visual studio qui active le support des fichiers vsdoc. Pas seulement pour jQuery, mais pour n’importe quel fichier javascript.

Voici le lien vers le post original : http://blogs.msdn.com/webdevtools/archive/2008/11/07/hotfix-to-enable-vsdoc-js-intellisense-doc-files-is-now-available.aspx

Voici le lien vers le site de jquery où vous pouvez télécharger le fichier vsdoc : jQuery web-site (Cherchez “Documentation: Visual Studio”)

Bien-sur, il ne faut pas déployer le fichier vsdoc. Celui-ci est présent simplement pour une aide au développement…

jeudi 7 janvier 2010

Comment améliorer les performances de votre application intranet ASP.NET ?

Avez-vous déjà regardé le nombre de requêtes effectuées par une application web intranet ?J’insiste sur Intranet, parce que je parle des application utilisation l’authentification windows. Généralement, pour  ce type d’applications, on les configure pour rejeter les utilisateurs anonymes. Cependant, cela implique que chaque fichier aura besoin d’une authentification, ce qui totalement faux : les fichiers javascript, css, images, … Tout ces fichiers ne devrait pas nécessiter d’authentification. C’est pourquoi, il faudrait autoriser les utilisateurs anonymes à y accéder.

Pourquoi désactiver l’authentification pour ces fichiers améliorerait les performances ? Tout simplement parce que l’authentification windows fonctionne sur le principe suivant : le navigateur envoie une requête en anonyme, le serveur réponds 401 (non autorisé), alors, et seulement à partir de ce moment, le navigateur envoie une nouvelle requête authentifiée, et vous pouvez maintenant récupérer le fichier. Cela veut dire qu’il y a 2 aller/retour pour récupérer un fichier. Cela fait sens pour les pages, mais pas pour les styles, les scripts ou les images. A mon avis, la “best-practice” serait de mettre les fichiers non sensible dans un dossier. Typiquement, le but serait d’utiliser la fonctionnalité de thèmes (même si vous n’avez qu’un seul thème).

Maintenant, nous arrivons à la partie pratique.

Pour chaque dossier contenant uniquement des données non sensible, vous devriez ajouter un fichier web.config contenant les lignes suivantes :

<?xml version="1.0"?> 
<configuration>
<system.web>
<authorization>
<allow users="?"/>
</authorization>
</system.web>
</configuration>


C’est mieux maintenant, mais ce n’est pas suffisant. En effet, il y a aussi les resources script qui sont chargées par le ScriptManager. Puisqu’on ne peux pas rediriger simplement le chemin vers ScriptResource.axd et WebResource.axd, il faut appliquer les changement directement dans le web.config racine de l’application en ajoutant les lignes suivantes dans l’élément configuration racine :



<location path="WebResource.axd">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
</location>

<location path="ScriptResource.axd">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
</location>


J’espère que vous avez apprécié l’astuce. A bientôt