Coach & formateur Agile/Kanban - Certified Scrum Coach | coach et formateur Kanban accrédité
dimanche 16 mars 2008
DbLinq.MySqlProviders
La dernière version de ce dernier, bien qu'ayant quelques buggs (surtout sur la génération du DataContext via SqlMetal), permet une première version de mes providers (Notez qu'elle permet surtout l'utilisation d'Oracle).
J'ai donc mis ce projet sur codeplex sous licence GNU.
La prochaine version devrait embarquer les providers Personnalization et Profile.
mercredi 12 mars 2008
Entity Framework et les fonctions SQL
Distinguons d'abord les fonctions canoniques des fonctions utilisateurs.
Pour les premières pas trop de soucis d'utilisation (lire la note de Zlatko Michailov), exemple:
MonObjetContext.CreateQueryPar contre, pour les fonctions utilisateurs, ce n'est plus si simple (cf. mon post sur le forum que je résume ici). Je remplace la fonction canonique Length par une fonction utilisateur MaFonction.("select value r from [MaTable] as r where Length('abc')=3;").ToList();
Le même code lève une erreur à l'execution:
MonObjetContext.CreateQueryPour que ça s'execute bien, EntitySQL doit savoir ou rechercher la définition de cette fonction. La définition va se trouver dans la couche logique de mon modèle (celle qui mappe ma base de données), c'est à dire dans le SSDL (que l'on trouve sous bin\ObjectContext ou directement dans la vue xml de MonEDM.edmx). En regardant de plus prêt dans le fichier MonEDM.ssdl, on trouve le nom du namespace et la définition de la fonction:("select value r from [MaTable] as r where MaFonction('abc')=3;").ToList();
<schema xmlns="http://schemas.microsoft.com/ado/2006/04/edm/ssdl" namespace="MonEDM.Store" alias="Self" providermanifesttoken="09.00.1399">Avec ces informations, je peux maintenant appeler ma fonction via EntitySQL en spécifiant le namespace:
<function name="MaFonction" returntype="int" aggregate="false" builtin="false" niladicfunction="false" iscomposable="true" parametertypesemantics="AllowImplicitConversion" schema="dbo">
MonObjetContext.CreateQuerysans erreur d'execution.("using MonEDM.Store;select value r from [MaTable] as r where MaFonction('abc')=3;").ToList();
lundi 10 mars 2008
Techdays : Suite et fin
Un grand merci pour les liens:
Prochaine conférence: les XP day France sur l'XP et l'agilité.
samedi 8 mars 2008
Gestion de projet: Extreme programming
![]() | Un excellent livre sur l'eXtreme Programming, et en français pour une fois. Il aborde toutes les facettes de la méthode: des concepts aux aspects contractuels. Le livre montre bien toute la maitrise et la connaissance d'XP par les auteurs, et donc le message passe très bien. L'étude de cas d'un projet industriel est particulièrement intéressante. Je suis resté un peu sur ma faim sur la partie métaphore (si quelqu'un pouvait laisser une bonne ressource sur le sujet?) et sur l'heure extreme (par contre, on trouve plus facilement des références sur ce point ici ou là). La complémentarité avec Scrum est seulement évoquée et renvoyée sur Agile Entreprise (ex XBreed). |
Laurent Morisseau, auteur de ce blog, pour me contacter
