Archive for septembre, 2008

Précompilation des fichiers aspx

Julien on sept 12th 2008

Dans une application asp.net, de base, les fichiers aspx ne sont pas compilés. Cette étape est réalisée par IIS lors du déploiement. En conséquence, toute erreur de syntaxe dans l'un de ces fichiers passera inaperçue lors de la compilation de la solution par le serveur d'intégration continue. Comme les vues sont rarement testées, on peut donc facilement se retrouver à déployer des fichiers contenants des erreurs de syntaxe... Aïe!

Pour éviter ce problème, il est possible d'appeler l'outil aspnet_compiler.exe directement depuis le fichier de build nant. Les quelques lignes suivantes auront donc pour effet de provoquer la compilation de l'ensemble des fichiers aspx de la solution et donc de rapporter toute erreur, magique!

  1.  
  2. <property name="build.dir" value="${build.base}/${project::get-name()}-${project.config}/"/>
  3. <property name="aspxbuild.dir" value="${build.dir}\aspx" />
  4. <property name="aspxvirtual.dir" value="${build.dir}\iis" />
  5.  
  6. <mkdir dir="${aspxbuild.dir}" />
  7. <mkdir dir="${aspxvirtual.dir}" />
  8. <copy todir="${aspxbuild.dir}">
  9. <fileset basedir="${aspx.dir}">
  10. <include name="**" />
  11. </fileset>
  12. </copy>
  13.  
  14. <mkiisdir dirpath="${aspxvirtual.dir}" vdirname="aspprecompile" />
  15. <exec program="C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_compiler.exe" useruntimeengine="true">
  16. <arg value="-p" />
  17. <arg value="${aspxbuild.dir}" />
  18. <arg value="-v" />
  19. <arg value="aspprecompile" />
  20. <arg value="${aspxvirtual.dir}" />
  21. </exec>
  22. <deliisdir vdirname="aspprecompile" />
  23. <delete dir="${aspxvirtual.dir}" />
  24.  

Remarque: il faut avoir installé iis et NantContrib sur le serveur de build !

Filed in Trucs et Astuces | 4 responses so far

Le coup de gueule de la rentrée: Chrome!

Julien on sept 3rd 2008

C'est la rentrée et c'est donc l'occasion pour moi d'essayer de me libérer à nouveau un petit peu de temps pour bloguer. Et quoi de mieux que de commencer par un coup de gueule!

Pour ceux qui sont passés à coté de l'actu de la semaine, Google à lancé son navigateur internet pour concurrencer les internet explorer, firefox, opéra et autre safari. Nom de code: Chrome. En tant qu'utilisateur, on ne peut être que content d'avoir un nouveau concurrent dans le secteur, d'autant que Chrome apporte son lot de nouvelles fonctionnalités. Mais qu'en est-il pour le développeur web? Sur le papier Chrome utilise webkit, le moteur de rendu aussi utilisé par Safari. L'affichage des 2 navigateurs devrait donc être identique...

Qu'en est-il dans la réalité?

Testé sur le site que je développe actuellement, dont l'affichage est parfait sous firefox 2 et 3, IE 6, 7 et 8, Safari 3.1 ou encore Opera 9.5 le résultat est tout bonnement incroyable : 80% des styles CSS ne sont pas appliqués, la page est absolument illisible. Merci google pour ce nouveau puits à emmerde fabuleux navigateur!

Je ne doute pas qu'il y ait une solution simple à ce "bug" d'affichage, mais quand même! Il serait temps que nous ayons un minimum de cohérence! A quand le framework CSS à la jquery qui s'occupe de garantir un affichage identique sur toutes les plateformes?

Edit: Il semblerait que les problèmes d'affichage soit liés au fait que le site est protégé par mot de passe. On dirait qu'il y a encore du boulot à abattre pour rendre chrome utilisable!

Filed in Divers | No responses yet