<?xml version="1.0" encoding="iso-8859-1"?><!-- generator="b2evolution/3.3.1" -->
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Guillaume Saint Etienne 's Blog - Commentaires r&#233;cents sur DataBinding dans ASP.Net 2.0 et NHibernate, pas de panique (suite)</title>
		<link>http://www.dotnetguru2.org/gse/index.php?disp=comments</link>
		<atom:link rel="self" type="application/rss+xml" href="http://www.dotnetguru2.org/gse/index.php?tempskin=_rss2&#38;disp=comments&#38;p=430" />
		<description></description>
		<language>fr-FR</language>
		<docs>http://backend.userland.com/rss</docs>
		<admin:generatorAgent rdf:resource="http://b2evolution.net/?v=3.3.1"/>
		<ttl>60</ttl>
				<item>
			<title>Guillaume Saint Etienne [Membre] en r&#233;ponse &#224;: DataBinding dans ASP.Net 2.0 et NHibernate, pas de panique (suite)</title>
			<pubDate>Sun, 07 May 2006 12:06:15 +0000</pubDate>
			<dc:creator>Guillaume Saint Etienne [Membre]</dc:creator>
			<guid isPermaLink="false">c4269@http://www.dotnetguru2.org/</guid>
			<description>pour r&amp;#233;pondre &amp;#224; Bertrand Le Roy: il est &amp;#233;vident que nous parlons ici entre grandes personnes et que, bien s&amp;#251;r, l'UI parle &amp;#224; des objets m&amp;#233;tiers ou de domaine (le CRUD fait-il partie du metier? d&amp;#233;bat!).&lt;br /&gt;
&lt;br /&gt;
Mais comme les colonnes de publication dans les blogs doivent rester courtes, je ne vous ai pas expos&amp;#233; l'architecture totale de ma solution. Ceci sera expliqu&amp;#233; dans l'article complet sur NHibernate que je pr&amp;#233;pare. &lt;br /&gt;
&lt;br /&gt;
Pour le moment, je montre directement le code des op&amp;#233;rations de la DAL, car elle travaille tout de m&amp;#234;me, en dessous de toute couche m&amp;#233;tier, donc il faut bien s'en occuper et c'est &amp;#224; son niveau des exceptions sont lev&amp;#233;es et empechait ma solution &quot;naive&quot; de fonctionner.</description>
			<content:encoded><![CDATA[pour r&#233;pondre &#224; Bertrand Le Roy: il est &#233;vident que nous parlons ici entre grandes personnes et que, bien s&#251;r, l'UI parle &#224; des objets m&#233;tiers ou de domaine (le CRUD fait-il partie du metier? d&#233;bat!).<br />
<br />
Mais comme les colonnes de publication dans les blogs doivent rester courtes, je ne vous ai pas expos&#233; l'architecture totale de ma solution. Ceci sera expliqu&#233; dans l'article complet sur NHibernate que je pr&#233;pare. <br />
<br />
Pour le moment, je montre directement le code des op&#233;rations de la DAL, car elle travaille tout de m&#234;me, en dessous de toute couche m&#233;tier, donc il faut bien s'en occuper et c'est &#224; son niveau des exceptions sont lev&#233;es et empechait ma solution "naive" de fonctionner.]]></content:encoded>
			<link>http://www.dotnetguru2.org/gse/index.php/2006/04/28/x#c4269</link>
		</item>
				<item>
			<title>Denis [Visiteur] en r&#233;ponse &#224;: DataBinding dans ASP.Net 2.0 et NHibernate, pas de panique (suite)</title>
			<pubDate>Sun, 07 May 2006 10:50:28 +0000</pubDate>
			<dc:creator>Denis [Visiteur]</dc:creator>
			<guid isPermaLink="false">c4268@http://www.dotnetguru2.org/</guid>
			<description>&lt;p&gt;Je viens de tomber sur ce probl&amp;#232;me sur un prototype ObjectDataSource + Castle ActiveRecord + Nhibernate. Tr&amp;#232;s ennuyeux. L'origine en est que pour un Update l'ObjectDataSource appel le constructeur par d&amp;#233;faut et ne nous laisse jamais la main pour substituer notre propre constructeur ou appeler une fonction sur une &amp;#233;ventuelle Factory.&lt;/p&gt;&lt;br /&gt;
&lt;p&gt;J'ai cru un moment que l'event OnObjectCreating pourrait nous sauver, mais il ne permet que de sp&amp;#233;cifier la Facade de l'acc&amp;#232;s aux objects quand les fonctions d'acc&amp;#232;s (SelectMethod...) sont non statiques, et non les objets eux-m&amp;#234;mes.&lt;/p&gt;&lt;br /&gt;
&lt;p&gt;Je ne vois pas de solution satisfaisante mais je n'ai pas tout essay&amp;#233; (les param&amp;#232;tres du style UpdateParameters ?). Je suis preneur de tout workaround...&lt;/p&gt;</description>
			<content:encoded><![CDATA[<p>Je viens de tomber sur ce probl&#232;me sur un prototype ObjectDataSource + Castle ActiveRecord + Nhibernate. Tr&#232;s ennuyeux. L'origine en est que pour un Update l'ObjectDataSource appel le constructeur par d&#233;faut et ne nous laisse jamais la main pour substituer notre propre constructeur ou appeler une fonction sur une &#233;ventuelle Factory.</p><br />
<p>J'ai cru un moment que l'event OnObjectCreating pourrait nous sauver, mais il ne permet que de sp&#233;cifier la Facade de l'acc&#232;s aux objects quand les fonctions d'acc&#232;s (SelectMethod...) sont non statiques, et non les objets eux-m&#234;mes.</p><br />
<p>Je ne vois pas de solution satisfaisante mais je n'ai pas tout essay&#233; (les param&#232;tres du style UpdateParameters ?). Je suis preneur de tout workaround...</p>]]></content:encoded>
			<link>http://www.dotnetguru2.org/gse/index.php/2006/04/28/x#c4268</link>
		</item>
				<item>
			<title>Bertrand Le Roy [Visiteur] en r&#233;ponse &#224;: DataBinding dans ASP.Net 2.0 et NHibernate, pas de panique (suite)</title>
			<pubDate>Thu, 04 May 2006 22:57:08 +0000</pubDate>
			<dc:creator>Bertrand Le Roy [Visiteur]</dc:creator>
			<guid isPermaLink="false">c4200@http://www.dotnetguru2.org/</guid>
			<description>Je peux poser une question idiote? Pourquoi ton UI parle directement &amp;#224; ta DAL? &amp;#199;a devrait pas plut&amp;#244;t causer &amp;#224; ta BL?</description>
			<content:encoded><![CDATA[Je peux poser une question idiote? Pourquoi ton UI parle directement &#224; ta DAL? &#199;a devrait pas plut&#244;t causer &#224; ta BL?]]></content:encoded>
			<link>http://www.dotnetguru2.org/gse/index.php/2006/04/28/x#c4200</link>
		</item>
				<item>
			<title>Guillaume Saint Etienne [Membre] en r&#233;ponse &#224;: DataBinding dans ASP.Net 2.0 et NHibernate, pas de panique (suite)</title>
			<pubDate>Thu, 04 May 2006 10:48:58 +0000</pubDate>
			<dc:creator>Guillaume Saint Etienne [Membre]</dc:creator>
			<guid isPermaLink="false">c4190@http://www.dotnetguru2.org/</guid>
			<description>alors... tout cela n'est pas simple, alors qu'il s'agit des operations de Databinding les plus courament pratiqu&amp;#233;es.&lt;br /&gt;
&lt;br /&gt;
Oui en effet, SaveOrUpdateCopy que j'ai tent&amp;#233; d'utiliser semblait le plus appropri&amp;#233;;&lt;br /&gt;
mais il ne marche pas dans mon cas car mon objet de donn&amp;#233;es TRestaurant poss&amp;#232;de des relations avec d'autres objets.&lt;br /&gt;
Du coup une exception est lev&amp;#233;e:  &lt;i&gt;object references an unsaved transient instance - save the transient instance before flushing: NomDeLObjetLieParTelation &lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
Sachant que dans mon detailview, je ne veux que travailler sur les donn&amp;#233;es scalaires, par les donn&amp;#233;es r&amp;#233;sultantes des objets li&amp;#233;s; il y aura d'autres IHM pour ca. Sinon on se tape la liaison &amp;#224; l'infini de toutes les entit&amp;#233;s d&amp;#233;pendantes. Et on a une IHM hyper-contrainte par la couche de persistance et ce n'est pas le but non plus.&lt;br /&gt;
&lt;br /&gt;
Ok, le probl&amp;#232;me peut venir aussi du schema de mapping et la facon dont sont exploit&amp;#233;es les relations. Activer le lazy sur le mode &quot;extra&quot; serait une solution? Debrancher les objets entre eux par le mapping? (Je n'utilise pas le mode cascade).&lt;br /&gt;
Il me parait peu sens&amp;#233; de devoir adapter un schema O/R aux n&amp;#233;cessit&amp;#233;s des op&amp;#233;rations de domaine. Cela devrait pouvoir se regler autrement.&lt;br /&gt;
&lt;br /&gt;
Mon id&amp;#233;e etait de contr&amp;#244;ler le databinding donn&amp;#233; par d&amp;#233;faut, d'une mani&amp;#232;re acceptable pour lui (le couple NHib/Webforms) faire faire exactement ce que l'on souhaite et qu'il n'en fasse pas trop.&lt;br /&gt;
 D'o&amp;#249; l'id&amp;#233;e de se r&amp;#233;-approprier la partie mise &amp;#224; jour de donn&amp;#233;es en faisant soi m&amp;#234;me le choix des donn&amp;#233;es &amp;#224; faire updater par NHib ( et pas le laisser tout faire tout seul puisque ca se passe mal ).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PS: les captures d'&amp;#233;cran, sources et le d&amp;#233;tail du projet viennent avec l'article en pr&amp;#233;paration.</description>
			<content:encoded><![CDATA[alors... tout cela n'est pas simple, alors qu'il s'agit des operations de Databinding les plus courament pratiqu&#233;es.<br />
<br />
Oui en effet, SaveOrUpdateCopy que j'ai tent&#233; d'utiliser semblait le plus appropri&#233;;<br />
mais il ne marche pas dans mon cas car mon objet de donn&#233;es TRestaurant poss&#232;de des relations avec d'autres objets.<br />
Du coup une exception est lev&#233;e:  <i>object references an unsaved transient instance - save the transient instance before flushing: NomDeLObjetLieParTelation </i>.<br />
<br />
Sachant que dans mon detailview, je ne veux que travailler sur les donn&#233;es scalaires, par les donn&#233;es r&#233;sultantes des objets li&#233;s; il y aura d'autres IHM pour ca. Sinon on se tape la liaison &#224; l'infini de toutes les entit&#233;s d&#233;pendantes. Et on a une IHM hyper-contrainte par la couche de persistance et ce n'est pas le but non plus.<br />
<br />
Ok, le probl&#232;me peut venir aussi du schema de mapping et la facon dont sont exploit&#233;es les relations. Activer le lazy sur le mode "extra" serait une solution? Debrancher les objets entre eux par le mapping? (Je n'utilise pas le mode cascade).<br />
Il me parait peu sens&#233; de devoir adapter un schema O/R aux n&#233;cessit&#233;s des op&#233;rations de domaine. Cela devrait pouvoir se regler autrement.<br />
<br />
Mon id&#233;e etait de contr&#244;ler le databinding donn&#233; par d&#233;faut, d'une mani&#232;re acceptable pour lui (le couple NHib/Webforms) faire faire exactement ce que l'on souhaite et qu'il n'en fasse pas trop.<br />
 D'o&#249; l'id&#233;e de se r&#233;-approprier la partie mise &#224; jour de donn&#233;es en faisant soi m&#234;me le choix des donn&#233;es &#224; faire updater par NHib ( et pas le laisser tout faire tout seul puisque ca se passe mal ).<br />
<br />
<br />
PS: les captures d'&#233;cran, sources et le d&#233;tail du projet viennent avec l'article en pr&#233;paration.]]></content:encoded>
			<link>http://www.dotnetguru2.org/gse/index.php/2006/04/28/x#c4190</link>
		</item>
				<item>
			<title>sami [Membre] en r&#233;ponse &#224;: DataBinding dans ASP.Net 2.0 et NHibernate, pas de panique (suite)</title>
			<pubDate>Sat, 29 Apr 2006 09:22:08 +0000</pubDate>
			<dc:creator>sami [Membre]</dc:creator>
			<guid isPermaLink="false">c3826@http://www.dotnetguru2.org/</guid>
			<description>Ok je comprend mieux ce que tu cherches &amp;#224; faire. Je vais essayer de r&amp;#233;sumer :&lt;br /&gt;
- Tu veux faire une sorte de Master/Detail avec le m&amp;#234;me objet &lt;br /&gt;
- Or, (et c'est logique) ASP.NET recr&amp;#233;&amp;#233; non seulement l'arbre des controls mais les ObjectDataSource associ&amp;#233;s&lt;br /&gt;
- Ta session est du type &quot;Session Longue&quot;, du coup le cache de premier niveau est tout le temps actif (et tu n'evict() pas les objets)&lt;br /&gt;
&lt;br /&gt;
Du coup, c'est tout &amp;#224; fait normal d'avoir un tel comportement. Qui plus est, Nhibernate n'en est pas la cause, tu aurais utilis&amp;#233; n'importe quel outil de mapping, le r&amp;#233;sultat aurait &amp;#233;t&amp;#233; &amp;#224; mon avis le m&amp;#234;me. Le mode Web fait que les graphes d'objets sont reconstruits &amp;#224; chaque requ&amp;#234;te. Et comme une m&amp;#234;me session Hibernate ne peut poss&amp;#233;der deux r&amp;#233;f&amp;#233;rences diff&amp;#233;rentes pour une m&amp;#234;me clef, l'outil l&amp;#232;ve une exception.&lt;br /&gt;
&lt;br /&gt;
Par contre ta solution me semble assez inadapt&amp;#233;e. Pourquoi faire un lock et copier des objets, alors qu'un simple lock sur modifiedData aurait suffit ou m&amp;#234;me mieux SaveOrUpdateCopy() ?&lt;br /&gt;
&lt;br /&gt;
1)&lt;br /&gt;
[DataObjectMethod(DataObjectMethodType.Update)]&lt;br /&gt;
public bool Modify2(X.DataEntityObjects.TRestaurants modifiedData)&lt;br /&gt;
{&lt;br /&gt;
 nhibsession.lock(modifiedData, LockMode...)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
2) session.SaveOrUpdateCopy(modifiedData) (il copie l'objet pass&amp;#233; en param&amp;#232;tre avec celui attach&amp;#233; en session mais n'attache jamais le param&amp;#232;tre)...&lt;br /&gt;
&lt;br /&gt;
Et puis, si on veut encore une autre solution (celle que je pr&amp;#233;f&amp;#232;re) : Il vaut mieux ne jamais utiliser le mode Long lived Session sur du Web et faire de l'optimistic locking. &lt;br /&gt;
&lt;br /&gt;
Sami&lt;br /&gt;
ps: guillaume,pourrais tu mettre un lien sur les sources si c'est possible?</description>
			<content:encoded><![CDATA[Ok je comprend mieux ce que tu cherches &#224; faire. Je vais essayer de r&#233;sumer :<br />
- Tu veux faire une sorte de Master/Detail avec le m&#234;me objet <br />
- Or, (et c'est logique) ASP.NET recr&#233;&#233; non seulement l'arbre des controls mais les ObjectDataSource associ&#233;s<br />
- Ta session est du type "Session Longue", du coup le cache de premier niveau est tout le temps actif (et tu n'evict() pas les objets)<br />
<br />
Du coup, c'est tout &#224; fait normal d'avoir un tel comportement. Qui plus est, Nhibernate n'en est pas la cause, tu aurais utilis&#233; n'importe quel outil de mapping, le r&#233;sultat aurait &#233;t&#233; &#224; mon avis le m&#234;me. Le mode Web fait que les graphes d'objets sont reconstruits &#224; chaque requ&#234;te. Et comme une m&#234;me session Hibernate ne peut poss&#233;der deux r&#233;f&#233;rences diff&#233;rentes pour une m&#234;me clef, l'outil l&#232;ve une exception.<br />
<br />
Par contre ta solution me semble assez inadapt&#233;e. Pourquoi faire un lock et copier des objets, alors qu'un simple lock sur modifiedData aurait suffit ou m&#234;me mieux SaveOrUpdateCopy() ?<br />
<br />
1)<br />
[DataObjectMethod(DataObjectMethodType.Update)]<br />
public bool Modify2(X.DataEntityObjects.TRestaurants modifiedData)<br />
{<br />
 nhibsession.lock(modifiedData, LockMode...)<br />
}<br />
<br />
2) session.SaveOrUpdateCopy(modifiedData) (il copie l'objet pass&#233; en param&#232;tre avec celui attach&#233; en session mais n'attache jamais le param&#232;tre)...<br />
<br />
Et puis, si on veut encore une autre solution (celle que je pr&#233;f&#232;re) : Il vaut mieux ne jamais utiliser le mode Long lived Session sur du Web et faire de l'optimistic locking. <br />
<br />
Sami<br />
ps: guillaume,pourrais tu mettre un lien sur les sources si c'est possible?]]></content:encoded>
			<link>http://www.dotnetguru2.org/gse/index.php/2006/04/28/x#c3826</link>
		</item>
				<item>
			<title>Tom [Visiteur] en r&#233;ponse &#224;: DataBinding dans ASP.Net 2.0 et NHibernate, pas de panique (suite)</title>
			<pubDate>Sat, 29 Apr 2006 09:08:45 +0000</pubDate>
			<dc:creator>Tom [Visiteur]</dc:creator>
			<guid isPermaLink="false">c3825@http://www.dotnetguru2.org/</guid>
			<description>Je serais tent&amp;#233; de dire que c'est le data binding bidirectionnel qui est un peu simpliste, ou plut&amp;#244;t qui a &amp;#233;t&amp;#233; con&amp;#231;u pour visualiser et mettre &amp;#224; jour des informations &quot;&amp;#224; plat&quot;, pas des graphes de donn&amp;#233;es (xml ou objet). &lt;br /&gt;
&lt;br /&gt;
La solution pourrait &amp;#234;tre de s'appuyer sur un framework de pr&amp;#233;sentation Web 2.0 qui rapatrie la structure de donn&amp;#233;es complexe c&amp;#244;t&amp;#233; client et en modifie le contenu directement en m&amp;#233;moire avant de la re-transf&amp;#233;rer sur le serveur pour mise &amp;#224; jour. J'ai mis en oeuvre une petite appli qui ressemble &amp;#224; &amp;#231;a bas&amp;#233;e sur les EJB 3 et DWR il y a quelques temps, c'&amp;#233;tait parfait en termes de productivit&amp;#233;. Certains frameworks .NET doivent offrir ce genre de possibilit&amp;#233;s (pas creus&amp;#233; pour le moment), bien plus int&amp;#233;ressantes que le binding &quot;bidi&quot; c&amp;#244;t&amp;#233; serveur en ASP.NET 2.0 classique.&lt;br /&gt;
&lt;br /&gt;
Tom&lt;br /&gt;
</description>
			<content:encoded><![CDATA[Je serais tent&#233; de dire que c'est le data binding bidirectionnel qui est un peu simpliste, ou plut&#244;t qui a &#233;t&#233; con&#231;u pour visualiser et mettre &#224; jour des informations "&#224; plat", pas des graphes de donn&#233;es (xml ou objet). <br />
<br />
La solution pourrait &#234;tre de s'appuyer sur un framework de pr&#233;sentation Web 2.0 qui rapatrie la structure de donn&#233;es complexe c&#244;t&#233; client et en modifie le contenu directement en m&#233;moire avant de la re-transf&#233;rer sur le serveur pour mise &#224; jour. J'ai mis en oeuvre une petite appli qui ressemble &#224; &#231;a bas&#233;e sur les EJB 3 et DWR il y a quelques temps, c'&#233;tait parfait en termes de productivit&#233;. Certains frameworks .NET doivent offrir ce genre de possibilit&#233;s (pas creus&#233; pour le moment), bien plus int&#233;ressantes que le binding "bidi" c&#244;t&#233; serveur en ASP.NET 2.0 classique.<br />
<br />
Tom<br />
]]></content:encoded>
			<link>http://www.dotnetguru2.org/gse/index.php/2006/04/28/x#c3825</link>
		</item>
				<item>
			<title>yartz [Visiteur] en r&#233;ponse &#224;: DataBinding dans ASP.Net 2.0 et NHibernate, pas de panique (suite)</title>
			<pubDate>Sat, 29 Apr 2006 08:17:47 +0000</pubDate>
			<dc:creator>yartz [Visiteur]</dc:creator>
			<guid isPermaLink="false">c3817@http://www.dotnetguru2.org/</guid>
			<description>Ca &amp;#233;corne un peu la r&amp;#233;putation d'&amp;#233;l&amp;#233;gance d'Hibernate tout &amp;#231;a. En gros, on a un mapping relationnel objet state of the art, qui respecte tous les patterns, fait de l'IOC, de l'AOP, et probablement trois ou quatre autres TLA, mais il faut faire par dessus du mapping objet/objet et des copies dans tous les coins parce que NHibernate n'a pas &amp;#233;t&amp;#233; pens&amp;#233; pour faire de l'ASP .Net ? </description>
			<content:encoded><![CDATA[Ca &#233;corne un peu la r&#233;putation d'&#233;l&#233;gance d'Hibernate tout &#231;a. En gros, on a un mapping relationnel objet state of the art, qui respecte tous les patterns, fait de l'IOC, de l'AOP, et probablement trois ou quatre autres TLA, mais il faut faire par dessus du mapping objet/objet et des copies dans tous les coins parce que NHibernate n'a pas &#233;t&#233; pens&#233; pour faire de l'ASP .Net ? ]]></content:encoded>
			<link>http://www.dotnetguru2.org/gse/index.php/2006/04/28/x#c3817</link>
		</item>
				<item>
			<title>Guillaume Saint Etienne [Membre] en r&#233;ponse &#224;: DataBinding dans ASP.Net 2.0 et NHibernate, pas de panique (suite)</title>
			<pubDate>Sat, 29 Apr 2006 01:03:21 +0000</pubDate>
			<dc:creator>Guillaume Saint Etienne [Membre]</dc:creator>
			<guid isPermaLink="false">c3771@http://www.dotnetguru2.org/</guid>
			<description>malheureusement Session.Reconnect n'est pas la solution. Son appel l&amp;#232;ve une exception:&lt;br /&gt;
Exception Details: NHibernate.HibernateException: session already connected&lt;br /&gt;
&lt;br /&gt;
par contre oui, ceci n'est pas fait pour les objets portant des associations. Dans mon cas, il s'agit d'editer avec un DetailView un objet poss&amp;#233;dant des donn&amp;#233;es scalaires. Il est prudent de s'en tenir l&amp;#224;. Et de g&amp;#233;rer les associations &amp;#224; part (avec un autre composant graphique par exemple).&lt;br /&gt;
&lt;br /&gt;
Il faudrait aller plus loin, et voir comment se comporte le 2-way data binding avec les &amp;#233;l&amp;#233;ments associ&amp;#233;s. A mon avis, ca ne doit pas &amp;#234;tre superbe et il doit falloir encore du &quot;hand-coding&quot;.  Ce sera la suite de mon &amp;#233;tude.&lt;br /&gt;
&lt;br /&gt;
Ceci dit, merci pour vos commentaires. Sachant que je vous livre ici non pas LA solution, mais une solution possible.</description>
			<content:encoded><![CDATA[malheureusement Session.Reconnect n'est pas la solution. Son appel l&#232;ve une exception:<br />
Exception Details: NHibernate.HibernateException: session already connected<br />
<br />
par contre oui, ceci n'est pas fait pour les objets portant des associations. Dans mon cas, il s'agit d'editer avec un DetailView un objet poss&#233;dant des donn&#233;es scalaires. Il est prudent de s'en tenir l&#224;. Et de g&#233;rer les associations &#224; part (avec un autre composant graphique par exemple).<br />
<br />
Il faudrait aller plus loin, et voir comment se comporte le 2-way data binding avec les &#233;l&#233;ments associ&#233;s. A mon avis, ca ne doit pas &#234;tre superbe et il doit falloir encore du "hand-coding".  Ce sera la suite de mon &#233;tude.<br />
<br />
Ceci dit, merci pour vos commentaires. Sachant que je vous livre ici non pas LA solution, mais une solution possible.]]></content:encoded>
			<link>http://www.dotnetguru2.org/gse/index.php/2006/04/28/x#c3771</link>
		</item>
			</channel>
</rss>
