<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>UNi ... De PHP à .NET &#187; LINQ</title>
	<atom:link href="https://blog.developpez.com/uni-fr/pcategory/net-3-x-net-4-x/linq/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/uni-fr</link>
	<description></description>
	<lastBuildDate>Wed, 07 May 2014 13:59:08 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>[LINQ] INNER JOIN avec  LINQ</title>
		<link>https://blog.developpez.com/uni-fr/p5857/net-3-x-net-4-x/linq_exemple_de_jointure_avec_linq</link>
		<comments>https://blog.developpez.com/uni-fr/p5857/net-3-x-net-4-x/linq_exemple_de_jointure_avec_linq#comments</comments>
		<pubDate>Mon, 09 Jun 2008 10:57:25 +0000</pubDate>
		<dc:creator><![CDATA[UNi[FR]]]></dc:creator>
				<category><![CDATA[.NET 3.x & .NET 4.x]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[LINQ]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Voici un petit exemple qui montre comment utiliser les jointures avec LINQ var query = &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; from tbl1 in db.matable1 &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; join tbl2 in db.matable2 on tbl1.id equals tbl2.id_tbl1 &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; select tbl1;]]></description>
				<content:encoded><![CDATA[<p>Voici un petit exemple qui montre comment utiliser les jointures avec LINQ</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">var query = &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; from tbl1 in db.matable1 <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; join tbl2 in db.matable2 on tbl1.id equals tbl2.id_tbl1 <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; select tbl1;</div></div>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[LINQ] DataContext &amp;&amp; Update</title>
		<link>https://blog.developpez.com/uni-fr/p6114/net-3-x-net-4-x/linq_les_connexions</link>
		<comments>https://blog.developpez.com/uni-fr/p6114/net-3-x-net-4-x/linq_les_connexions#comments</comments>
		<pubDate>Thu, 24 Jul 2008 10:19:09 +0000</pubDate>
		<dc:creator><![CDATA[UNi[FR]]]></dc:creator>
				<category><![CDATA[.NET 3.x & .NET 4.x]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[LINQ]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[J&#8217;ai remarqué une chose qu&#8217;il est bon de noté dans un coin. Lorsque l&#8217;on veut faire un update d&#8217;un objet, il est impératif de faire l&#8217;update avec le datacontext qui s&#8217;est occupé de récupérer l&#8217;objet. Je m&#8217;explique&#8230; je me suis créé une fonction qui permet de récupérer un objet selon son ID public class Utils &#160; { &#160; &#160; &#160; &#160; public static monobjet getMonObjet(int inId) &#160; &#160; &#160; &#160; { &#160; &#160; &#160; &#160; [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>J&rsquo;ai remarqué une chose qu&rsquo;il est bon de noté dans un coin.</p>
<p>Lorsque l&rsquo;on veut faire un update d&rsquo;un objet, il est impératif de faire l&rsquo;update avec le datacontext qui s&rsquo;est occupé de récupérer l&rsquo;objet.</p>
<p>Je m&rsquo;explique&#8230;</p>
<p><span id="more-3"></span></p>
<p>je me suis créé une fonction qui permet de récupérer un objet selon son ID</p>
<pre>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">public class Utils &nbsp;<br />
{ <br />
&nbsp; &nbsp; &nbsp; &nbsp; public static monobjet getMonObjet(int inId) <br />
&nbsp; &nbsp; &nbsp; &nbsp; { <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (Utils.m_db == null) <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Utils.m_db = new DataClasses1DataContext(&quot;ma_chaine_de_connexion&quot;); <br />
&nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var _result = <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ( <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; from tbl in Utils.m_db.matable <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; where tbl.id == inId <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; select tbl <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ).ToList(); <br />
&nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (_result.Count &gt; 0) <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; return _result[0]; <br />
&nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; return null; <br />
&nbsp; &nbsp; &nbsp; &nbsp; } <br />
}</div></div>

</pre>
<p>une fois l&rsquo;objet récupérer, j&rsquo;effectue des modifications</p>
<pre>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var _strConn = &quot;ma_chaine_de_connexion&quot;; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var db = new DataClasses1DataContext(_strConn); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; db.Log = Console.Out; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var _obj = Utils.getMonObjet(_id); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _r.ordre = inOrder; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; db.SubmitChanges();</div></div>

</pre>
<p>et bien celà ne fonctionne pas pour la simple et bonne raison que le DataContext qui à récupérer l&rsquo;objet n&rsquo;est pas le même que celui qui fait l&rsquo;update !</p>
<p>ce qui me donne pour la fonction static</p>
<pre>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">public class Utils &nbsp;<br />
{ <br />
&nbsp; &nbsp; &nbsp; &nbsp; public static monobjet getMonObjet(DataContext inContext, int inId) <br />
&nbsp; &nbsp; &nbsp; &nbsp; { <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var _result = <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ( <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; from tbl in inContext.matable <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; where tbl.id == inId <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; select tbl <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ).ToList(); <br />
&nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (_result.Count &gt; 0) <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; return _result[0]; <br />
&nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; return null; <br />
&nbsp; &nbsp; &nbsp; &nbsp; } <br />
}</div></div>

</pre>
<p>et pour mon code d&rsquo;appelle</p>
<pre>

<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var _strConn = &quot;ma_chaine_de_connexion&quot;; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var db = new DataClasses1DataContext(_strConn); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; db.Log = Console.Out; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var _obj = Utils.getMonObjet(db, _id); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _r.ordre = inOrder; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; db.SubmitChanges();</div></div>

</pre>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
