<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>Dynamic Reflection Library</title><link>http://dynamic.codeplex.com/project/feeds/rss</link><description>The Dynamic Reflection Library is a small set of classes designed to greatly speed the use of .Net reflection to call constructors, member methods, property setters and getters including those with indexing arguments such as the Item &amp;#40;a.k.a. &amp;#91;&amp;#93; operator&amp;#41;, and fields. It includes full support for all reference, value and enum objects.</description><item><title>Source code checked in, #99885</title><link>http://dynamic.codeplex.com/SourceControl/changeset/changes/99885</link><description>Upgrade&amp;#58; New Version of LabDefaultTemplate.xaml. To upgrade your build definitions, please visit the following link&amp;#58; http&amp;#58;&amp;#47;&amp;#47;go.microsoft.com&amp;#47;fwlink&amp;#47;&amp;#63;LinkId&amp;#61;254563</description><author>Project Collection Service Accounts</author><pubDate>Mon, 01 Oct 2012 21:24:31 GMT</pubDate><guid isPermaLink="false">Source code checked in, #99885 20121001092431P</guid></item><item><title>Source code checked in, #99884</title><link>http://dynamic.codeplex.com/SourceControl/changeset/changes/99884</link><description>Checked in by server upgrade</description><author>Project Collection Service Accounts</author><pubDate>Mon, 01 Oct 2012 21:16:08 GMT</pubDate><guid isPermaLink="false">Source code checked in, #99884 20121001091608P</guid></item><item><title>Source code checked in, #74794</title><link>http://dynamic.codeplex.com/SourceControl/changeset/changes/74794</link><description>Checked in by server upgrade</description><author>_TFSSERVICE</author><pubDate>Tue, 03 Aug 2010 19:44:57 GMT</pubDate><guid isPermaLink="false">Source code checked in, #74794 20100803074457P</guid></item><item><title>New Post: How about generic method invocations?</title><link>http://www.codeplex.com/Dynamic/Thread/View.aspx?ThreadId=31524</link><description>&lt;div style="line-height: normal;"&gt;I'd like to use your approach to handling generic class instantiation and generic method&amp;nbsp;&amp;nbsp;invocation, but I don't see any way to do it.&lt;br&gt;
&lt;br&gt;
Here's a sample of code I'd like to use it for.&lt;br&gt;
&lt;br&gt;
creating a strongly typed object:&lt;br&gt;
&lt;br&gt;
CreateObject&amp;lt;T&amp;gt;( string a, int b, params object[] c )&lt;br&gt;
{&lt;br&gt;
&amp;nbsp; SomeObject&amp;lt;T&amp;gt; rv = new SomeObject&amp;lt;T&amp;gt;( a, b, c )&lt;br&gt;
&lt;br&gt;
&amp;nbsp; return rv;&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
calling a strongly typed generic proc or function:&lt;br&gt;
&lt;br&gt;
...&lt;br&gt;
void Foo&amp;lt;T&amp;gt;( T arg1, T arg2 ) {}&lt;br&gt;
Q bar&amp;lt;Q&amp;gt;( int i, double j ) { }&lt;br&gt;
&lt;br&gt;
Is there a way to accomplish this with this thing?&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>vankirkc</author><pubDate>Tue, 15 Jul 2008 08:05:43 GMT</pubDate><guid isPermaLink="false">New Post: How about generic method invocations? 20080715080543A</guid></item><item><title>New Post: How about generic method invocations?</title><link>http://dynamic.codeplex.com/Thread/View.aspx?ThreadId=31524</link><description>&lt;div style="line-height: normal;"&gt;I'd like to use your approach to handling generic class instantiation and generic method&amp;nbsp;&amp;nbsp;invocation, but I don't see any way to do it.&lt;br&gt;
&lt;br&gt;
Here's a sample of code I'd like to use it for.&lt;br&gt;
&lt;br&gt;
creating a strongly typed object:&lt;br&gt;
&lt;br&gt;
CreateObject&amp;lt;T&amp;gt;( string a, int b, params object[] c )&lt;br&gt;
{&lt;br&gt;
&amp;nbsp; SomeObject&amp;lt;T&amp;gt; rv = new SomeObject&amp;lt;T&amp;gt;( a, b, c )&lt;br&gt;
&lt;br&gt;
&amp;nbsp; return rv;&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
calling a strongly typed generic proc or function:&lt;br&gt;
&lt;br&gt;
...&lt;br&gt;
void Foo&amp;lt;T&amp;gt;( T arg1, T arg2 ) {}&lt;br&gt;
Q bar&amp;lt;Q&amp;gt;( int i, double j ) { }&lt;br&gt;
&lt;br&gt;
Is there a way to accomplish this with your library? At the moment the only way to accomplish this at runtime is to get a Type or MethodInfo handle then call MakeGeneric on it.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>vankirkc</author><pubDate>Tue, 15 Jul 2008 08:05:43 GMT</pubDate><guid isPermaLink="false">New Post: How about generic method invocations? 20080715080543A</guid></item><item><title>New Post: How about generic method invocations?</title><link>http://dynamic.codeplex.com/Thread/View.aspx?ThreadId=31524</link><description>&lt;div style="line-height: normal;"&gt;I'd like to use your approach to handling generic class instantiation and generic method&amp;nbsp;&amp;nbsp;invocation, but I don't see any way to do it.&lt;br&gt;
&lt;br&gt;
Here's a sample of code I'd like to use it for.&lt;br&gt;
&lt;br&gt;
creating a strongly typed object:&lt;br&gt;
&lt;br&gt;
CreateObject&amp;lt;T&amp;gt;( string a, int b, params object[] c )&lt;br&gt;
{&lt;br&gt;
&amp;nbsp; SomeObject&amp;lt;T&amp;gt; rv = new SomeObject&amp;lt;T&amp;gt;( a, b, c )&lt;br&gt;
&lt;br&gt;
&amp;nbsp; return rv;&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
calling a strongly typed generic proc or function:&lt;br&gt;
&lt;br&gt;
...&lt;br&gt;
void Foo&amp;lt;T&amp;gt;( T arg1, T arg2 ) {}&lt;br&gt;
Q bar&amp;lt;Q&amp;gt;( int i, double j ) { }&lt;br&gt;
&lt;br&gt;
Is there a way to accomplish this with your library? At the moment the only way to accomplish this at runtime is to get a Type or MethodInfo handle then call MakeGeneric on it.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>vankirkc</author><pubDate>Tue, 15 Jul 2008 08:05:43 GMT</pubDate><guid isPermaLink="false">New Post: How about generic method invocations? 20080715080543A</guid></item><item><title>New Post: How about generic method invocations?</title><link>http://dynamic.codeplex.com/Thread/View.aspx?ThreadId=31524</link><description>&lt;div style="line-height: normal;"&gt;I'd like to use your approach to handling generic class instantiation and generic method&amp;nbsp;&amp;nbsp;invocation, but I don't see any way to do it.&lt;br&gt;
&lt;br&gt;
Here's a sample of code I'd like to use it for.&lt;br&gt;
&lt;br&gt;
creating a strongly typed object:&lt;br&gt;
&lt;br&gt;
CreateObject&amp;lt;T&amp;gt;( string a, int b, params object[] c )&lt;br&gt;
{&lt;br&gt;
&amp;nbsp; SomeObject&amp;lt;T&amp;gt; rv = new SomeObject&amp;lt;T&amp;gt;( a, b, c )&lt;br&gt;
&lt;br&gt;
&amp;nbsp; return rv;&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
calling a strongly typed generic proc or function:&lt;br&gt;
&lt;br&gt;
...&lt;br&gt;
void Foo&amp;lt;T&amp;gt;( T arg1, T arg2 ) {}&lt;br&gt;
Q bar&amp;lt;Q&amp;gt;( int i, double j ) { }&lt;br&gt;
&lt;br&gt;
Is there a way to accomplish this with your library? At the moment the only way to accomplish this at runtime is to get a Type or MethodInfo handle then call MakeGeneric on it.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>vankirkc</author><pubDate>Tue, 15 Jul 2008 08:05:43 GMT</pubDate><guid isPermaLink="false">New Post: How about generic method invocations? 20080715080543A</guid></item><item><title>NEW POST: Internal Class</title><link>http://www.codeplex.com/Dynamic/Thread/View.aspx?ThreadId=24967</link><description>&lt;div style="line-height: normal;"&gt;Yes, i've a solution.&lt;br&gt;
&lt;br&gt;
You can see a sample in my project Tangibilis in Codeplex.&lt;br&gt;
&lt;br&gt;
&lt;a href="http://www.codeplex.com/Tangibilis/SourceControl/FileView.aspx?itemId=135071&amp;changeSetId=6122"&gt;http://www.codeplex.com/Tangibilis/SourceControl/FileView.aspx?itemId=135071&amp;amp;changeSetId=6122&lt;/a&gt;&lt;br&gt;
&lt;br&gt;
Good luck.
&lt;/div&gt;</description><author>sbia</author><pubDate>Wed, 21 May 2008 19:25:34 GMT</pubDate><guid isPermaLink="false">NEW POST: Internal Class 20080521072534P</guid></item><item><title>NEW POST: Internal Class</title><link>http://www.codeplex.com/Dynamic/Thread/View.aspx?ThreadId=24967</link><description>&lt;div style="line-height: normal;"&gt;Yes, i've a solution.&lt;br&gt;
&lt;br&gt;
You can see a sample in my project Tangibilis in Codeplex.&lt;br&gt;
&lt;br&gt;
&lt;a href="http://www.codeplex.com/Tangibilis/SourceControl/FileView.aspx?itemId=135071&amp;changeSetId=6122"&gt;http://www.codeplex.com/Tangibilis/SourceControl/FileView.aspx?itemId=135071&amp;amp;changeSetId=6122&lt;/a&gt;&lt;br&gt;
&lt;br&gt;
Good luck.
&lt;/div&gt;</description><author>sbia</author><pubDate>Wed, 21 May 2008 16:50:32 GMT</pubDate><guid isPermaLink="false">NEW POST: Internal Class 20080521045032P</guid></item><item><title>NEW POST: Internal Class</title><link>http://www.codeplex.com/Dynamic/Thread/View.aspx?ThreadId=24967</link><description>&lt;div style="line-height: normal;"&gt;I have the same problem. Any solution?
&lt;/div&gt;</description><author>nesher</author><pubDate>Tue, 20 May 2008 18:47:18 GMT</pubDate><guid isPermaLink="false">NEW POST: Internal Class 20080520064718P</guid></item><item><title>NEW POST: Internal Class</title><link>http://www.codeplex.com/Dynamic/Thread/View.aspx?ThreadId=24967</link><description>&lt;div class="wikidoc"&gt;
Hi, How can i invoke method from an internal class ?&lt;br /&gt;
&lt;/div&gt;</description><author>sbia</author><pubDate>Sat, 29 Mar 2008 16:39:41 GMT</pubDate><guid isPermaLink="false">NEW POST: Internal Class 20080329043941P</guid></item><item><title>NEW POST: Nested Objects</title><link>http://www.codeplex.com/Dynamic/Thread/View.aspx?ThreadId=20443</link><description>&lt;div class="wikidoc"&gt;
Code example sent to your email.&lt;br /&gt;
&lt;/div&gt;</description><author>mtsu_bravo</author><pubDate>Thu, 17 Jan 2008 21:30:03 GMT</pubDate><guid isPermaLink="false">NEW POST: Nested Objects 20080117093003P</guid></item><item><title>New Post: Nested Objects</title><link>http://dynamic.codeplex.com/Thread/View.aspx?ThreadId=20443</link><description>&lt;div style="line-height: normal;"&gt;
Code example sent to your email.&lt;br /&gt;&lt;/div&gt;</description><author>mtsu_bravo</author><pubDate>Thu, 17 Jan 2008 21:30:03 GMT</pubDate><guid isPermaLink="false">New Post: Nested Objects 20080117093003P</guid></item><item><title>New Post: Nested Objects</title><link>http://dynamic.codeplex.com/Thread/View.aspx?ThreadId=20443</link><description>&lt;div style="line-height: normal;"&gt;
Code example sent to your email.&lt;br /&gt;&lt;/div&gt;</description><author>mtsu_bravo</author><pubDate>Thu, 17 Jan 2008 21:30:03 GMT</pubDate><guid isPermaLink="false">New Post: Nested Objects 20080117093003P</guid></item><item><title>NEW POST: Nested Objects</title><link>http://www.codeplex.com/Dynamic/Thread/View.aspx?ThreadId=20443</link><description>&lt;div class="wikidoc"&gt;
Is there any expectation of extending this to support nested objects? aka something.somethingelse.something&lt;br /&gt;I have taken your base and manipulated it with some other examples I have found to support this but it is not fully functional. As I do not fully understand how this works. I can supply you with the code I got if your willing to make the modification to your base to support this.&lt;br /&gt; &lt;br /&gt;The problem I have with mine is as long as all of the nested objects are populate it works, but if they are not they will have a value of null and it causes an compare error. These objects are not of type nullable but they have a value of null.&lt;br /&gt; &lt;br /&gt;Does this make any sense?&lt;br /&gt;Thanks for the library its been very helpful.&lt;br /&gt;
&lt;/div&gt;</description><author>mtsu_bravo</author><pubDate>Tue, 15 Jan 2008 01:15:39 GMT</pubDate><guid isPermaLink="false">NEW POST: Nested Objects 20080115011539A</guid></item><item><title>New Post: Nested Objects</title><link>http://dynamic.codeplex.com/Thread/View.aspx?ThreadId=20443</link><description>&lt;div style="line-height: normal;"&gt;
Is there any expectation of extending this to support nested objects? aka something.somethingelse.something&lt;br /&gt;I have taken your base and manipulated it with some other examples I have found to support this but it is not fully functional. As I do not fully understand how this works. I can supply you with the code I got if your willing to make the modification to your base to support this.&lt;br /&gt;&lt;br /&gt;The problem I have with mine is as long as all of the nested objects are populate it works, but if they are not they will have a value of null and it causes an compare error. These objects are not of type nullable but they have a value of null.&lt;br /&gt;&lt;br /&gt;Does this make any sense?&lt;br /&gt;Thanks for the library its been very helpful.&lt;br /&gt;&lt;/div&gt;</description><author>mtsu_bravo</author><pubDate>Tue, 15 Jan 2008 01:15:39 GMT</pubDate><guid isPermaLink="false">New Post: Nested Objects 20080115011539A</guid></item><item><title>New Post: Nested Objects</title><link>http://dynamic.codeplex.com/Thread/View.aspx?ThreadId=20443</link><description>&lt;div style="line-height: normal;"&gt;
Is there any expectation of extending this to support nested objects? aka something.somethingelse.something&lt;br /&gt;I have taken your base and manipulated it with some other examples I have found to support this but it is not fully functional. As I do not fully understand how this works. I can supply you with the code I got if your willing to make the modification to your base to support this.&lt;br /&gt;&lt;br /&gt;The problem I have with mine is as long as all of the nested objects are populate it works, but if they are not they will have a value of null and it causes an compare error. These objects are not of type nullable but they have a value of null.&lt;br /&gt;&lt;br /&gt;Does this make any sense?&lt;br /&gt;Thanks for the library its been very helpful.&lt;br /&gt;&lt;/div&gt;</description><author>mtsu_bravo</author><pubDate>Tue, 15 Jan 2008 01:15:39 GMT</pubDate><guid isPermaLink="false">New Post: Nested Objects 20080115011539A</guid></item><item><title>NEW POST: How to access the field like System.Data.RelatedView.values ?</title><link>http://www.codeplex.com/Dynamic/Thread/View.aspx?ThreadId=18335</link><description>&lt;div class="wikidoc"&gt;
The problem is that the type System.Data.RelatedView is internal into System.Data.dll so the following code can't be compiled : &lt;br /&gt;Dynamic&amp;lt;System.Data.RelatedView&amp;gt;.Instance.Field&amp;lt;object[]&amp;gt;.Getter.CreateDelegate(&amp;quot;values&amp;quot;); &lt;br /&gt; &lt;br /&gt;so I've wrote this to access it without your lib:&lt;br /&gt; &lt;br /&gt; Type relatedViewType = System.Reflection.Assembly.GetAssembly(typeof(System.Data.DataSet))&lt;br /&gt;                                                            .GetType(&amp;quot;System.Data.RelatedView&amp;quot;);&lt;br /&gt; &lt;br /&gt;            FieldInfo valuesField = relatedViewType.GetField(&amp;quot;values&amp;quot;, System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);&lt;br /&gt; &lt;br /&gt;            //build setter&lt;br /&gt;            DynamicMethod setterDef = new DynamicMethod(relatedViewType.Name + &amp;quot;&lt;i&gt;&amp;quot; + valuesField + &amp;quot;&lt;/i&gt;Setter&amp;quot;,&lt;br /&gt;                                                        typeof(void),&lt;br /&gt;                                                        new Type[] { typeof(DataView), typeof(object[]) }, //define 1st param as DataView cause RelatedView is not an accessible type&lt;br /&gt;                                                        relatedViewType);&lt;br /&gt; &lt;br /&gt;            ILGenerator setterIL = setterDef.GetILGenerator();&lt;br /&gt;            setterIL.Emit(OpCodes.Ldarg_0); //we expect in top of the stack object instance&lt;br /&gt;            setterIL.Emit(OpCodes.Ldarg_1);&lt;br /&gt;            setterIL.Emit(OpCodes.Stfld, valuesField);&lt;br /&gt;            setterIL.Emit(OpCodes.Ret); //note: we have to return, even if method is void&lt;br /&gt; &lt;br /&gt;            //assign s_RelatedViewKeyValuesSetter with the builded method&lt;br /&gt;            s_RelatedViewKeyValuesSetter = (Common.Utility.CodeEmit.Proc&amp;lt;DataView, object[]&amp;gt;)setterDef.CreateDelegate(typeof(Common.Utility.CodeEmit.Proc&amp;lt;DataView, object[]&amp;gt;));&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;
&lt;/div&gt;</description><author>BixasBxB</author><pubDate>Tue, 04 Dec 2007 11:18:20 GMT</pubDate><guid isPermaLink="false">NEW POST: How to access the field like System.Data.RelatedView.values ? 20071204111820A</guid></item><item><title>New Post: How to access the field like System.Data.RelatedView.values ?</title><link>http://dynamic.codeplex.com/Thread/View.aspx?ThreadId=18335</link><description>&lt;div style="line-height: normal;"&gt;
The problem is that the type System.Data.RelatedView is internal into System.Data.dll so the following code can't be compiled : &lt;br /&gt;Dynamic&amp;lt;System.Data.RelatedView&amp;gt;.Instance.Field&amp;lt;object[]&amp;gt;.Getter.CreateDelegate("values"); &lt;br /&gt;&lt;br /&gt;so I've wrote this to access it without your lib:&lt;br /&gt;&lt;br /&gt; Type relatedViewType = System.Reflection.Assembly.GetAssembly(typeof(System.Data.DataSet))&lt;br /&gt;                                                            .GetType("System.Data.RelatedView");&lt;br /&gt;&lt;br /&gt;            FieldInfo valuesField = relatedViewType.GetField("values", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);&lt;br /&gt;&lt;br /&gt;            //build setter&lt;br /&gt;            DynamicMethod setterDef = new DynamicMethod(relatedViewType.Name + "&lt;i&gt;" + valuesField + "&lt;/i&gt;Setter",&lt;br /&gt;                                                        typeof(void),&lt;br /&gt;                                                        new Type[] { typeof(DataView), typeof(object[]) }, //define 1st param as DataView cause RelatedView is not an accessible type&lt;br /&gt;                                                        relatedViewType);&lt;br /&gt;&lt;br /&gt;            ILGenerator setterIL = setterDef.GetILGenerator();&lt;br /&gt;            setterIL.Emit(OpCodes.Ldarg_0); //we expect in top of the stack object instance&lt;br /&gt;            setterIL.Emit(OpCodes.Ldarg_1);&lt;br /&gt;            setterIL.Emit(OpCodes.Stfld, valuesField);&lt;br /&gt;            setterIL.Emit(OpCodes.Ret); //note: we have to return, even if method is void&lt;br /&gt;&lt;br /&gt;            //assign s_RelatedViewKeyValuesSetter with the builded method&lt;br /&gt;            s_RelatedViewKeyValuesSetter = (Common.Utility.CodeEmit.Proc&amp;lt;DataView, object[]&amp;gt;)setterDef.CreateDelegate(typeof(Common.Utility.CodeEmit.Proc&amp;lt;DataView, object[]&amp;gt;));&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;</description><author>BixasBxB</author><pubDate>Tue, 04 Dec 2007 11:18:20 GMT</pubDate><guid isPermaLink="false">New Post: How to access the field like System.Data.RelatedView.values ? 20071204111820A</guid></item><item><title>COMMENTED FEATURE: Allow sorting on object graph public properties</title><link>http://www.codeplex.com/Dynamic/WorkItem/View.aspx?WorkItemId=6443</link><description>It would be helpful if there were a simple way to sort objects deeper in the object graph via their public properties.&lt;br /&gt;&lt;br /&gt;An Example Scenario&amp;#58;&lt;br /&gt;Parent object has children objects with property of Firstname&lt;br /&gt;The ability to specify an orderby &amp;#40;or alternative means&amp;#41; to sort by Parent.Child.Firstname &amp;#40;where Firstname is a public property of Child object&amp;#41;&lt;br /&gt;Comments: ** Comment from web user: ngruson ** &lt;p&gt;I made some changes to the code to support this requirement and it works for me. You can get it at http&amp;#58;&amp;#47;&amp;#47;nils-gruson.blogspot.com&amp;#47;. Marc, can you take a look at this&amp;#63;&lt;/p&gt;&lt;p&gt;Greets,&lt;br /&gt;Nils Gruson&lt;/p&gt;</description><author>ngruson</author><pubDate>Thu, 29 Nov 2007 13:02:03 GMT</pubDate><guid isPermaLink="false">COMMENTED FEATURE: Allow sorting on object graph public properties 20071129010203P</guid></item></channel></rss>