LeProgrammeur.net

Blogue d'un programmeur.net

Content Query Web Part (CQWP)

Depuis une semaine, je travail beaucoup sur un projet Sharepoint 2007 et j'ai rapidement découvert la Content Query Web Part. C'est une web part permettant de récupérer le contenu d'un liste Sharepoint afin de la présenter sous un format personnalisé.

 

Un rappel de mes connaissances XSL pour l'utilisation de la Web Part a été neccessaire et HOP, j'avais pu faire le rendu demandé par le client sur le thème que j'ai intégrer dans le site Sharepoint. 

Il est évidemment possible dériver le comportement de la Content Query Web Part, puisqu'elle ne permet pas d'effectuer de la pagination et récupérer des paramètres de filtrage en dynamique.

Plusieurs blogs traitent du comportement de cette WebPart, et je vous invites a les consulter:

  1. CQWP: ce qu'il est bon de savoir (part1)
  2. Customizing the Content Query Web Part XSL
  3. Adding table headers and/or footers to Content Query Web Part
  4. MOSS: Content Query WebPart et Audience - Limitation et Contournement
  5. How to: Display Custom Fields in a Content Query WebPart
 
Posted: août 02 2009, 00:46 by lturmel | Commentaires (0) RSS comment feed |
  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Téléchargement de VS.Net 2010 Beta 1

Pour ceux et celles qui ne le savent pas, la beta 1 de VS.Net 2010 du .Net Framework ver 4.0 est disponible depuis un bon moment.

Page de téléchargement sur MSDN ici

Pod Cast sur Channel 9 ici

have fun !

Posted: mai 28 2009, 03:53 by lturmel | Commentaires (2) RSS comment feed |
  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Qu'est-ce que le Cruise Control ?

Qu'est-ce le Cruise Control ?

La vraie question devrait plutôt être qu'est-ce que Cruise Control ? Puisque ce n'est pas une méthode de drague ou quoi que ce soit se rapportant à l'approche d'une fille ou d'un gars.

En fait, Cruise Control est un produit appliquant la pratique d'intégration continue dans l'industrie des logiciels. 

Pour formuler autrement la première question:

À quoi correspond l'intégration continue ?

C'est permettre de rendre simple TOUTES les tâches longue et souvent complexes requise pour obtenir un produit logicie final. Ce principel intègre tout les aspects du développement d'un logiciel soit: Compilation des sources, mise en place de la configuration, lancement de tests unitaire, contrôle de qualité des sources, packaging dans le but d'en faire un livrable exploitable et livraison automatique sur le ou les différents environnement d'exploitations.

Le mot continue dans Intégration Continue, vient appuyer l'aspect de petite livraison, mais sur une courte période de temps. D'oule but d'automisation de ces tâches qui peuvent être trop souvent répéter et causer une perte de temps et des régressions entre les livraisons. 

Alors qu'est-ce que Cruise Control ?    

Cruise Control, ce veut être un produit qui a été écrit pour les équipes de développement afin de leurs permettre de pouvoir appliquer l'Intégration Continue. Une version JAVA (CruiseControl) est disponible et une version .Net (CruiseControl.Net) est aussi disponible pour les différents environnements.

De ces deux versions de l'outil, il est possible et c'est l'objectif, d'intégrer différents outil permettant d'appliquer différentes tâches. Tel la récupération des sources sur un Contrôleur de Sources (TFS, CVS,SVN, VSS), lancement de tests unitaire (NUNIT ou JUNIT), contrôle de qualité du codes (FXCOP) et plus encore, comme NANT(.Net) et ANT (J2EE).

Que vous soyez du monde J2EE ou .Net, cette pratique n'appartient pas à une technologie en soit, mais qu'à une méthode de travail qui est l'Extrem Programming, prôner par Martin Fowler et Kent Beck qui ont été les premiers a écrire sur ce sujets.

 
Posted: avr. 29 2009, 01:37 by lturmel | Commentaires (0) RSS comment feed |
  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Common Intermediate Language (CLI ou MSIL) Pourquoi ?

Pourquoi développer une fonctionnalités en Common Language Intermediate, soit du CLI, anciennement nommé Microsoft Intermediate Language ?

C'est un peu la question que j'avais, lorsqu'un collègue m'avait proposer lorsque nous avions évalué notre Assembly. Je connaissais la signification de MSIL, soit le langage Natif .Net. Language qui est interprété par le runtime .Net, mais j'en avais jamais fais auparavant.

La problématique, étant de concevoir un lanceur d'appel de méthode X tout en étant en mesure de pouvoir avoir un "feedback" au début et à la fin de l'appel de la méthode X. Par réflection, le système était devenue tout simplement lourd et non maintenable... mais le besoin était toujours présent, celui d'être dynamique.

La solution ? Développer notre Assembly pour notre besoin en code natif, en CLI.

Schéma du CLI

 
Le meilleur résumé sur la signification du code CLI (MSIL) ce retrouve MSDN: http://msdn.microsoft.com/fr-fr/library/c5tkafs1(VS.80).aspx 
 
"Compilation en MSIL
Lors d'une compilation destinée à produire un code managé, le compilateur convertit le code source en langage MSIL (Microsoft Intermediate Language), un jeu d'instructions indépendant du processeur qui est converti efficacement en code natif. MSIL inclut des instructions pour le chargement, le stockage, l'initialisation et l'appel de méthodes sur des objets, ainsi que des instructions pour la réalisation d'opérations arithmétiques et logiques, le flux de contrôle, l'accès direct à la mémoire, la gestion des exceptions et d'autres opérations. Avant d'exécuter du code, vous devez d'abord convertir le langage MSIL en code spécifique du processeur, généralement à l'aide d'un compilateur JIT (Just-In-Time). Dans la mesure où le Common Language Runtime fournit un ou plusieurs compilateurs JIT pour chaque architecture d'ordinateur qu'il prend en charge, le même jeu de MSIL peut être traité par un compilateur JIT et exécuté sur toute architecture prise en charge.
Lorsqu'un compilateur produit un code MSIL, il génère aussi des métadonnées. Les métadonnées décrivent les types contenus dans votre code, y compris la définition de chaque type, les signatures des membres de chaque type, les membres référencés par votre code, et d'autres données que le runtime utilise au moment de l'exécution. Le code MSIL et les métadonnées sont stockés dans un fichier exécutable portable (PE) qui est basé sur le fichier Microsoft PE publié qu'il prolonge et sur le format COFF (Common Object File Format) utilisé traditionnellement pour le contenu exécutable. Ce format de fichier, qui accepte le code MSIL ou le code natif ainsi que les métadonnées, permet au système d'exploitation de reconnaître les images du Common Language Runtime. La présence de métadonnées dans le fichier en même temps que le jeu d'instructions MSIL permet à votre code de se décrire lui-même, ce qui signifie que les bibliothèques de types et IDL (Interface Definition Language) ne sont pas nécessaires. Le runtime recherche les métadonnées dans le fichier et les extrait selon les besoins, au moment de l'exécution."
 
Source: http://msdn.microsoft.com/fr-fr/library/c5tkafs1(VS.80).aspx
 

Fort malheureusement, les resources fiable sur Internet sur le développement CLI (MSIL) sont très limités. En voici une qui m'aura été très utile: http://www.thefreakparade.com/2008/06/baby-stepping-into-msil-creating-an-event-recorder-using-a-dynamicmethod-and-reflectionemit

Posted: nov. 27 2008, 13:38 by lturmel | Commentaires (0) RSS comment feed |
  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5