<?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>Le blog de L'ami S'ami - Commentaires r&#233;cents sur L'API System.Transactions</title>
		<link>http://www.dotnetguru2.org/sami/index.php?disp=comments</link>
		<atom:link rel="self" type="application/rss+xml" href="http://www.dotnetguru2.org/sami/index.php?tempskin=_rss2&#38;disp=comments&#38;p=49" />
		<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>Olivier Abrivard [Visiteur] en r&#233;ponse &#224;: L'API System.Transactions</title>
			<pubDate>Wed, 25 Aug 2004 07:38:02 +0000</pubDate>
			<dc:creator>Olivier Abrivard [Visiteur]</dc:creator>
			<guid isPermaLink="false">c76@http://www.dotnetguru2.org/</guid>
			<description>Merci pour la r&amp;#233;ponse.&lt;br /&gt;
Je suis tout &amp;#224; fait d'accord sur le fait d'&amp;#233;viter les transactions longues. HttpContext.Current.Items ne peut pas permettre le &quot;stockage temporaire&quot; d'une transaction dont la dur&amp;#233;e de vie est sup&amp;#233;rieure &amp;#224; la WebRequest car sa dur&amp;#233;e de vie est justement la m&amp;#234;me qu'une WebRequest.&lt;br /&gt;
Ma remarque sur [ThreadLocal] portait sur la notion de r&amp;#233;utilisation d'un Thread existant par IIS : je craignais de voir un Thread interrompu par IIS (une sorte de multi-activit&amp;#233;s au sein du thread comme on a du multi-thread au sein d'un processus) et donc de voir le pattern &quot;Thread Local Storage&quot; remis en cause dans le cas d'une utilisation via ASP.Net. Apparemment ce n'est pas le cas puisque tu indiques que le ThreadID de la WebRequest ne bouge pas au cours de son ex&amp;#233;cution.&lt;br /&gt;
Merci encore pour ces &amp;#233;claircissements.</description>
			<content:encoded><![CDATA[Merci pour la r&#233;ponse.<br />
Je suis tout &#224; fait d'accord sur le fait d'&#233;viter les transactions longues. HttpContext.Current.Items ne peut pas permettre le "stockage temporaire" d'une transaction dont la dur&#233;e de vie est sup&#233;rieure &#224; la WebRequest car sa dur&#233;e de vie est justement la m&#234;me qu'une WebRequest.<br />
Ma remarque sur [ThreadLocal] portait sur la notion de r&#233;utilisation d'un Thread existant par IIS : je craignais de voir un Thread interrompu par IIS (une sorte de multi-activit&#233;s au sein du thread comme on a du multi-thread au sein d'un processus) et donc de voir le pattern "Thread Local Storage" remis en cause dans le cas d'une utilisation via ASP.Net. Apparemment ce n'est pas le cas puisque tu indiques que le ThreadID de la WebRequest ne bouge pas au cours de son ex&#233;cution.<br />
Merci encore pour ces &#233;claircissements.]]></content:encoded>
			<link>http://www.dotnetguru2.org/sami/index.php/2004/07/26/l_api_system_transactions#c76</link>
		</item>
				<item>
			<title>admin [Membre] en r&#233;ponse &#224;: L'API System.Transactions</title>
			<pubDate>Thu, 19 Aug 2004 13:37:25 +0000</pubDate>
			<dc:creator>admin [Membre]</dc:creator>
			<guid isPermaLink="false">c72@http://www.dotnetguru2.org/</guid>
			<description>Bonjour Olivier,&lt;br /&gt;
Tr&amp;#232;s bonne question. Si une transaction doit avoir une dur&amp;#233;e de vie sup&amp;#233;rieure &amp;#224; celle d'une WebRequest, alors effectivement il vaut mieux utiliser HttpContext.Current.Items. Ceci dit, il faut garder &amp;#224; l'esprit que la transaction est initi&amp;#233;e dans la couche de service (BLL) et sa dur&amp;#233;e de vie est souvent &amp;#233;gale &amp;#224; celle du service (le ThreadID de la WebRequest ne bouge pas entre deux appels de m&amp;#233;thode BLL).&lt;br /&gt;
Ce cas de figure peut se produire lorsqu'on utilise des Transaction &quot;longues&quot;, d&amp;#233;conseill&amp;#233;e dans la mesure du possible.&lt;br /&gt;
&lt;br /&gt;
Sami</description>
			<content:encoded><![CDATA[Bonjour Olivier,<br />
Tr&#232;s bonne question. Si une transaction doit avoir une dur&#233;e de vie sup&#233;rieure &#224; celle d'une WebRequest, alors effectivement il vaut mieux utiliser HttpContext.Current.Items. Ceci dit, il faut garder &#224; l'esprit que la transaction est initi&#233;e dans la couche de service (BLL) et sa dur&#233;e de vie est souvent &#233;gale &#224; celle du service (le ThreadID de la WebRequest ne bouge pas entre deux appels de m&#233;thode BLL).<br />
Ce cas de figure peut se produire lorsqu'on utilise des Transaction "longues", d&#233;conseill&#233;e dans la mesure du possible.<br />
<br />
Sami]]></content:encoded>
			<link>http://www.dotnetguru2.org/sami/index.php/2004/07/26/l_api_system_transactions#c72</link>
		</item>
				<item>
			<title>Olivier Abrivard [Visiteur] en r&#233;ponse &#224;: L'API System.Transactions</title>
			<pubDate>Thu, 19 Aug 2004 12:50:37 +0000</pubDate>
			<dc:creator>Olivier Abrivard [Visiteur]</dc:creator>
			<guid isPermaLink="false">c71@http://www.dotnetguru2.org/</guid>
			<description>Bonjour,&lt;br /&gt;
&lt;br /&gt;
Je viens juste de parcourir l'article et je me pose une question sur l'acc&amp;#232;s &amp;#224; &quot;Transaction.Current&quot; et sur le pattern &quot;Thread Local Storage&quot;. Si j'ai bien compris, tu dis que ce pattern est mis en oeuvre gr&amp;#226;ce &amp;#224; un champ statique &quot;unique par thread&quot; (attribut [ThreadStatic]). Or ce type de champs pose probl&amp;#232;me lors d'une utilisation via ASP.NET 1.0 et IIS (r&amp;#233;utilisation des threads par IIS) : le champ est bien unique par thread mais pas unique par requ&amp;#234;te (je ne suis pas s&amp;#251;r de ce que j'avance car c'est li&amp;#233; &amp;#224; une simple exp&amp;#233;rimentation perso =&gt; je n'ai pas trouv&amp;#233; de doc &amp;#224; ce sujet). &lt;br /&gt;
Un m&amp;#234;me champ peut donc se retrouver partag&amp;#233; par plusieurs utilisateurs, ce qui pose probl&amp;#232;me pour la transaction courante.&lt;br /&gt;
Pour contourner ce probl&amp;#232;me on peut utiliser une zone de stockage unique par requ&amp;#234;te et non unique par thread (System.Web.HttpContext.Current.Items) en ASP.NET 1.0.&lt;br /&gt;
Ma question est &quot;Dans .Net 2.0, Microsoft a-t-il modifi&amp;#233; le comportement de l'attribut [ThreadLocal] de fa&amp;#231;on a ce que l'interaction avec IIS soit plus fiable ?&quot;&lt;br /&gt;
</description>
			<content:encoded><![CDATA[Bonjour,<br />
<br />
Je viens juste de parcourir l'article et je me pose une question sur l'acc&#232;s &#224; "Transaction.Current" et sur le pattern "Thread Local Storage". Si j'ai bien compris, tu dis que ce pattern est mis en oeuvre gr&#226;ce &#224; un champ statique "unique par thread" (attribut [ThreadStatic]). Or ce type de champs pose probl&#232;me lors d'une utilisation via ASP.NET 1.0 et IIS (r&#233;utilisation des threads par IIS) : le champ est bien unique par thread mais pas unique par requ&#234;te (je ne suis pas s&#251;r de ce que j'avance car c'est li&#233; &#224; une simple exp&#233;rimentation perso => je n'ai pas trouv&#233; de doc &#224; ce sujet). <br />
Un m&#234;me champ peut donc se retrouver partag&#233; par plusieurs utilisateurs, ce qui pose probl&#232;me pour la transaction courante.<br />
Pour contourner ce probl&#232;me on peut utiliser une zone de stockage unique par requ&#234;te et non unique par thread (System.Web.HttpContext.Current.Items) en ASP.NET 1.0.<br />
Ma question est "Dans .Net 2.0, Microsoft a-t-il modifi&#233; le comportement de l'attribut [ThreadLocal] de fa&#231;on a ce que l'interaction avec IIS soit plus fiable ?"<br />
]]></content:encoded>
			<link>http://www.dotnetguru2.org/sami/index.php/2004/07/26/l_api_system_transactions#c71</link>
		</item>
				<item>
			<title>L&#233;on Andrianarivony [Visiteur] en r&#233;ponse &#224;: L'API System.Transactions</title>
			<pubDate>Mon, 26 Jul 2004 17:25:12 +0000</pubDate>
			<dc:creator>L&#233;on Andrianarivony [Visiteur]</dc:creator>
			<guid isPermaLink="false">c34@http://www.dotnetguru2.org/</guid>
			<description>Je suis curieux de savoir le choix de changer la valeur par d&amp;#233;faut du IsolationLevel &amp;#224; Serializable par rapport &amp;#224; celui Read Commmitted qui est par d&amp;#233;faut actuellement ?</description>
			<content:encoded><![CDATA[Je suis curieux de savoir le choix de changer la valeur par d&#233;faut du IsolationLevel &#224; Serializable par rapport &#224; celui Read Commmitted qui est par d&#233;faut actuellement ?]]></content:encoded>
			<link>http://www.dotnetguru2.org/sami/index.php/2004/07/26/l_api_system_transactions#c34</link>
		</item>
			</channel>
</rss>
