<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: LINQ Abuse with the C# 4 dynamic type</title>
	<atom:link href="http://jrwren.wrenfam.com/blog/2010/03/04/linq-abuse-with-the-c-4-dynamic-type/feed/" rel="self" type="application/rss+xml" />
	<link>http://jrwren.wrenfam.com/blog/2010/03/04/linq-abuse-with-the-c-4-dynamic-type/</link>
	<description>babblings of a computer loving fool</description>
	<lastBuildDate>Tue, 24 Jan 2012 03:52:30 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: jrwren</title>
		<link>http://jrwren.wrenfam.com/blog/2010/03/04/linq-abuse-with-the-c-4-dynamic-type/comment-page-1/#comment-31267</link>
		<dc:creator>jrwren</dc:creator>
		<pubDate>Sat, 06 Mar 2010 13:53:30 +0000</pubDate>
		<guid isPermaLink="false">http://jrwren.wrenfam.com/blog/2010/03/04/linq-abuse-with-the-c-4-dynamic-type/#comment-31267</guid>
		<description>@keith

because we don&#039;t know if it will be IEnumerable. A more real example would be like this:

dynamic x = SomeDynamicResultFromPythonOrSomething();
object o = x;
var result = from i in o where ... select ...;

The method which returns a dynamic may or may not return a dynamic which ultimately implements IEnumerable. Further more, depending on my implementation of Where, Select, etc. I might not even care if they implement IEnumerable. It may be enough that it returns an object which implements GetEnumerator. Remember that foreach does not require a type implement IEnumerable, just that the GetEnumerator method exist.</description>
		<content:encoded><![CDATA[<p>@keith</p>
<p>because we don&#8217;t know if it will be IEnumerable. A more real example would be like this:</p>
<p>dynamic x = SomeDynamicResultFromPythonOrSomething();<br />
object o = x;<br />
var result = from i in o where &#8230; select &#8230;;</p>
<p>The method which returns a dynamic may or may not return a dynamic which ultimately implements IEnumerable. Further more, depending on my implementation of Where, Select, etc. I might not even care if they implement IEnumerable. It may be enough that it returns an object which implements GetEnumerator. Remember that foreach does not require a type implement IEnumerable, just that the GetEnumerator method exist.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Keith J. Farmer</title>
		<link>http://jrwren.wrenfam.com/blog/2010/03/04/linq-abuse-with-the-c-4-dynamic-type/comment-page-1/#comment-31266</link>
		<dc:creator>Keith J. Farmer</dc:creator>
		<pubDate>Sat, 06 Mar 2010 04:12:46 +0000</pubDate>
		<guid isPermaLink="false">http://jrwren.wrenfam.com/blog/2010/03/04/linq-abuse-with-the-c-4-dynamic-type/#comment-31266</guid>
		<description>Actually, instead of extending object, why not simply extend the non-generic IEnumerable. After all, you are making that presumption internally with Select.</description>
		<content:encoded><![CDATA[<p>Actually, instead of extending object, why not simply extend the non-generic IEnumerable. After all, you are making that presumption internally with Select.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ayende Rahien</title>
		<link>http://jrwren.wrenfam.com/blog/2010/03/04/linq-abuse-with-the-c-4-dynamic-type/comment-page-1/#comment-31263</link>
		<dc:creator>Ayende Rahien</dc:creator>
		<pubDate>Fri, 05 Mar 2010 08:38:16 +0000</pubDate>
		<guid isPermaLink="false">http://jrwren.wrenfam.com/blog/2010/03/04/linq-abuse-with-the-c-4-dynamic-type/#comment-31263</guid>
		<description>Never mind, got it to work.
Thanks, that actually solved my problem completely!</description>
		<content:encoded><![CDATA[<p>Never mind, got it to work.<br />
Thanks, that actually solved my problem completely!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ayende Rahien</title>
		<link>http://jrwren.wrenfam.com/blog/2010/03/04/linq-abuse-with-the-c-4-dynamic-type/comment-page-1/#comment-31262</link>
		<dc:creator>Ayende Rahien</dc:creator>
		<pubDate>Fri, 05 Mar 2010 08:30:20 +0000</pubDate>
		<guid isPermaLink="false">http://jrwren.wrenfam.com/blog/2010/03/04/linq-abuse-with-the-c-4-dynamic-type/#comment-31262</guid>
		<description>Well, that is nice!
Can you make it work for SelectMany as well?
I tried a bit, but I couldn&#039;t really get it to work</description>
		<content:encoded><![CDATA[<p>Well, that is nice!<br />
Can you make it work for SelectMany as well?<br />
I tried a bit, but I couldn&#8217;t really get it to work</p>
]]></content:encoded>
	</item>
</channel>
</rss>

