<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="http://www.codeplex.com/rss.xsl"?><rss version="2.0"><channel><title>Bindable LINQ</title><link>http://bindablelinq.codeplex.com/Project/ProjectRss.aspx</link><description>Bindable LINQ is a set of extensions to LINQ that add data binding and change propagation capabilities to standard LINQ queries. </description><item><title>New Post: Bindable LINQ + Charting from Silverlight Toolkit</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=59458</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I have created a demo of using Bindable LINQ for Charting here:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://bindablelinqcharting.codeplex.com/"&gt;http://bindablelinqcharting.codeplex.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The app is very simple, but shows a really easy way to get charts from your business data.&lt;/p&gt;
&lt;p&gt;Cheers&lt;/p&gt;
&lt;p&gt;Oleg.&lt;/p&gt;&lt;/div&gt;</description><author>mihailik</author><pubDate>Sun, 14 Jun 2009 12:40:31 GMT</pubDate><guid isPermaLink="false">New Post: Bindable LINQ + Charting from Silverlight Toolkit 20090614124031P</guid></item><item><title>New Post: How to make property visible in Visual studio designer?</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=58920</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;&lt;span style="font-size:small"&gt;&lt;span style="font-family:Calibri"&gt;&lt;span lang=EN-US&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US&gt;I have a property of type &lt;/span&gt;&lt;span&gt;IBindableQuery&lt;/span&gt;&lt;span lang=EN-US&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US&gt;I want to bind that property to a control on windows form using Visual Studio 2008 designer. &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US&gt;But I can&amp;rsquo;t see the property In designer.&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US&gt;How shoud I bind that property &lt;/span&gt;&lt;span&gt;through&lt;/span&gt;&lt;strong&gt;&lt;span style="line-height:115%;font-family:'Arial CYR','sans-serif';font-size:10pt"&gt; &lt;/span&gt;&lt;/strong&gt;&lt;span lang=EN-US&gt;Visual Studio 2008 designer?&lt;/span&gt;&lt;/p&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0cm 0cm 10pt"&gt;&amp;nbsp;&lt;/p&gt;&lt;/div&gt;</description><author>JNikolov</author><pubDate>Tue, 09 Jun 2009 13:39:48 GMT</pubDate><guid isPermaLink="false">New Post: How to make property visible in Visual studio designer? 20090609013948P</guid></item><item><title>New Post: Still active?</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=57680</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;I really hate to ask this question, but is Bindable LINQ still active?&lt;/p&gt;&lt;/div&gt;</description><author>cameronm</author><pubDate>Thu, 28 May 2009 02:26:51 GMT</pubDate><guid isPermaLink="false">New Post: Still active? 20090528022651A</guid></item><item><title>New Post: Is binding on nested collections supported?</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=55600</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Yes, it looks like SelectMany is not working properly, I tried to do similar things and failed too.&lt;/p&gt;&lt;/div&gt;</description><author>mihailik</author><pubDate>Fri, 08 May 2009 14:25:08 GMT</pubDate><guid isPermaLink="false">New Post: Is binding on nested collections supported? 20090508022508P</guid></item><item><title>New Post: Is binding on nested collections supported?</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=55600</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Update: I just tried the above scenario with ComponentOne's LiveLINQ and it works correctly, so this does appear to be a limitation of the current version of BindableLINQ.&lt;/p&gt;
&lt;p&gt;James.&lt;/p&gt;&lt;/div&gt;</description><author>jamesthurley</author><pubDate>Fri, 08 May 2009 08:56:51 GMT</pubDate><guid isPermaLink="false">New Post: Is binding on nested collections supported? 20090508085651A</guid></item><item><title>New Post: Delayed change 'tracking</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=55643</link><description>&lt;div style="line-height: normal;"&gt;Hi,&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;I wonder whether Bin-LINQ can implement a feature.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Whenever some of the dependencies change, current implementation recalculates result. When one of the dependencies is TextBox-like, you'd want to have half-second delay before applying recalculations. It means when user types a word, there will be just one recalculation instead of one for every letter typed.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;I understand the change would be around IDispatcher-implementors. There are several options for visible API, but that's not too important as soon as the feature is there somewhere.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;The only thing that bothers me is how safe is it to delay those events. Well, they are already somewhat delayed in some cases (when change is marshalled between threads). But particularly IBindingList notification model looks prone to delays. It is based on indices, not objects, which means if you don't convert index to object straight away, you may miss your chance forever, as the new event may render the first index unusable.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Many thanks&lt;/div&gt;&lt;div&gt;Oleg.&lt;/div&gt;&lt;/div&gt;</description><author>mihailik</author><pubDate>Thu, 07 May 2009 23:07:44 GMT</pubDate><guid isPermaLink="false">New Post: Delayed change 'tracking 20090507110744P</guid></item><item><title>New Post: Is binding on nested collections supported?</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=55600</link><description>&lt;div style="line-height: normal;"&gt;In this scenario I have a collection of items, and each item has a collection of sub-items.  I want BindableLINQ to return me a list of all the sub-items in all items.  &lt;br&gt;
&lt;br&gt;
I've included the code which tests this scenario, but where the standard LINQ query correctly retuns 1 sub-item the BindableLINQ version doesn't update and returns zero sub-items.&lt;br&gt;
&lt;br&gt;
Is this not supported, or have I made an error in my usage?&lt;br&gt;
&lt;br&gt;
&lt;p&gt;    class Program&lt;br&gt;
    {&lt;br&gt;
        static void Main(string[] args)&lt;br&gt;
        {&lt;br&gt;
            Root r = new Root();&lt;/p&gt;
&lt;p&gt;            var bindableLinqResult = r.Items.AsBindable().SelectMany(i =&amp;gt; i.SubItems.AsBindable());&lt;/p&gt;
&lt;p&gt;            Item a = new Item();&lt;br&gt;
            r.Items.Add(a);&lt;br&gt;
            a.SubItems.Add(new SubItem());&lt;/p&gt;
&lt;p&gt;            var standardLinqResult = r.Items.SelectMany(i =&amp;gt; i.SubItems.AsBindable());&lt;/p&gt;
&lt;p&gt;            Console.WriteLine(&amp;quot;BindableLINQ: &amp;quot; + bindableLinqResult.Count);&lt;br&gt;
            Console.WriteLine(&amp;quot;LINQ: &amp;quot; + standardLinqResult.Count());&lt;br&gt;
        }&lt;br&gt;
    }&lt;/p&gt;
&lt;p&gt;    class Root&lt;br&gt;
    {&lt;br&gt;
        ObservableCollection&amp;lt;Item&amp;gt; items = new ObservableCollection&amp;lt;Item&amp;gt;();&lt;br&gt;
        public ObservableCollection&amp;lt;Item&amp;gt; Items { get { return this.items; } }&lt;br&gt;
    }&lt;/p&gt;
&lt;p&gt;    class Item &lt;br&gt;
    {&lt;br&gt;
        ObservableCollection&amp;lt;SubItem&amp;gt; subItems = new ObservableCollection&amp;lt;SubItem&amp;gt;();&lt;br&gt;
        public ObservableCollection&amp;lt;SubItem&amp;gt; SubItems { get { return this.subItems; } }&lt;br&gt;
    }&lt;/p&gt;
&lt;p&gt;    class SubItem { }&lt;/p&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>jamesthurley</author><pubDate>Thu, 07 May 2009 15:40:54 GMT</pubDate><guid isPermaLink="false">New Post: Is binding on nested collections supported? 20090507034054P</guid></item><item><title>Created Issue: BindingListAdapter does not implement ITypedList - Affects binding to empty set</title><link>http://bindablelinq.codeplex.com/WorkItem/View.aspx?WorkItemId=7471</link><description>Paul,&lt;br /&gt;&lt;br /&gt;BindingListAdapter should implement ITypedList in order to allow WinForms DataGridView column binding to succeed when the binding list is initially empty.&lt;br /&gt;&lt;br /&gt;Code is&amp;#58;&lt;br /&gt;&lt;br /&gt;        &amp;#47;&amp;#47; This method is only used in the design-time framework &lt;br /&gt;        &amp;#47;&amp;#47; and by the obsolete DataGrid control.&lt;br /&gt;        public string GetListName&amp;#40;PropertyDescriptor&amp;#91;&amp;#93; listAccessors&amp;#41;&lt;br /&gt;        &amp;#123;&lt;br /&gt;            return typeof&amp;#40;TElement&amp;#41;.Name&amp;#59;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;        public PropertyDescriptorCollection GetItemProperties&amp;#40;PropertyDescriptor&amp;#91;&amp;#93; listAccessors&amp;#41;&lt;br /&gt;        &amp;#123;&lt;br /&gt;            PropertyDescriptorCollection pdc &amp;#61; null&amp;#59;&lt;br /&gt;            if &amp;#40;null &amp;#61;&amp;#61; listAccessors&amp;#41;&lt;br /&gt;            &amp;#123;&lt;br /&gt;                pdc &amp;#61; new PropertyDescriptorCollection&amp;#40;_propertyDescriptors.Values.ToArray&amp;#40;&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;            &amp;#125;&lt;br /&gt;            else&lt;br /&gt;            &amp;#123;&lt;br /&gt;                &amp;#47;&amp;#47; Return child list shape.&lt;br /&gt;                pdc &amp;#61; ListBindingHelper.GetListItemProperties&amp;#40;listAccessors&amp;#91;0&amp;#93;.PropertyType&amp;#41;&amp;#59;&lt;br /&gt;            &amp;#125;&lt;br /&gt;            return pdc&amp;#59;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;Where ListBindingHelper is in the System.Windows.Forms namespace...&lt;br /&gt;&lt;br /&gt;Hope this helps,&lt;br /&gt;Andrew.&lt;br /&gt;</description><author>reddogaw</author><pubDate>Wed, 15 Apr 2009 21:28:49 GMT</pubDate><guid isPermaLink="false">Created Issue: BindingListAdapter does not implement ITypedList - Affects binding to empty set 20090415092849P</guid></item><item><title>Created Issue: UnionIterator does not work. Affects SelectMany too.</title><link>http://bindablelinq.codeplex.com/WorkItem/View.aspx?WorkItemId=7423</link><description>Hey Paul&amp;#33;&lt;br /&gt;&lt;br /&gt;So I was trying to use a SelectMany operation and due to some dysfunction in the UnionIterator it wasn&amp;#39;t evaluating the child lists soon enough.&lt;br /&gt;&lt;br /&gt;I think I&amp;#39;ve fixed it, but I&amp;#39;m not positive that I should be evaluating the child list at such a soon point in time. Please look it over.&lt;br /&gt;&lt;br /&gt;Find attached some very limited unit tests for the Union operation as well as the UnionIterator class with changes to the Action&amp;#39;s for when ChildCollection&amp;#39;s are added.&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;Andrew.&lt;br /&gt;</description><author>reddogaw</author><pubDate>Fri, 03 Apr 2009 17:25:42 GMT</pubDate><guid isPermaLink="false">Created Issue: UnionIterator does not work. Affects SelectMany too. 20090403052542P</guid></item><item><title>Created Issue: I can't compile in SILVERLIGHT</title><link>http://bindablelinq.codeplex.com/WorkItem/View.aspx?WorkItemId=7296</link><description>Error&amp;#9;19&amp;#9;Cannot convert lambda expression to type &amp;#39;System.Delegate&amp;#39; because it is not a delegate type&amp;#9;C&amp;#58;&amp;#92;Data&amp;#92;Silverlight&amp;#92;bindablelinq-25046&amp;#92;trunk&amp;#92;source&amp;#92;Bindable.Linq&amp;#92;Threading&amp;#92;SilverlightDispatcher.cs&amp;#9;35&amp;#9;21&amp;#9;Bindable.Linq&lt;br /&gt;</description><author>mhnyborg</author><pubDate>Tue, 17 Mar 2009 15:05:30 GMT</pubDate><guid isPermaLink="false">Created Issue: I can't compile in SILVERLIGHT 20090317030530P</guid></item><item><title>New Post: BindableLinq vs LiveLinq?</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=49927</link><description>&lt;div style="line-height: normal;"&gt;LiveLinq has two areas of functionality:&lt;br&gt;
(1) Optimizing LINQ performance, mainly with indexes;&lt;br&gt;
(2) What we (ComponentOne) call &amp;quot;live views&amp;quot;.&lt;br&gt;
Live view functionality is similar to Bindable LINQ.&lt;br&gt;
Indexing (optimization, speedup) functionality is not present in Bindable LINQ.&lt;br&gt;
Also, Live LINQ optimizes the process of updating (what we call &amp;quot;maintaining&amp;quot;) its&lt;br&gt;
views, similar to some Incremental View Maintenance algorithms, to make view maintenance as fast as possible.&lt;br&gt;
Optimization also allows to use LiveLinq live views not only in GUI (what we call &amp;quot;immediate maintenance mode&amp;quot;), but also in non-GUI, batch tasks (&amp;quot;deferred maintenance mode&amp;quot;, enabling what we tentatively call &amp;quot;view-oriented programming&amp;quot;). &lt;br&gt;
Also, LiveLinq supports joins in live views (not yet supported in Bindable LINQ), which is critical for many applications.&lt;br&gt;
On the other hand, Live LINQ does not yet support automatic handling of dependencies (other than standard LINQ dependencies),&lt;br&gt;
a feature supported in Bindable LINQ.&lt;br&gt;
And I, one of the LiveLinq authors, would love to talk to you.&lt;br&gt;
&lt;br&gt;
-Michael Eisenstein, ComponentOne&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>meisen</author><pubDate>Fri, 13 Mar 2009 01:40:20 GMT</pubDate><guid isPermaLink="false">New Post: BindableLinq vs LiveLinq? 20090313014020A</guid></item><item><title>New Post: BindableLinq vs LiveLinq?</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=49927</link><description>&lt;div style="line-height: normal;"&gt;Thanks for sharing Craig, I too am interested in what the differences are. &lt;br&gt;
&lt;/div&gt;</description><author>stovellp</author><pubDate>Thu, 12 Mar 2009 03:23:22 GMT</pubDate><guid isPermaLink="false">New Post: BindableLinq vs LiveLinq? 20090312032322A</guid></item><item><title>New Post: BindableLinq vs LiveLinq?</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=49927</link><description>&lt;div style="line-height: normal;"&gt;I only just saw &lt;a href="http://labs.componentone.com/LiveLinq/" title="ComponentOne LiveLinq"&gt;LiveLinq&lt;/a&gt; in an email from ComponentOne... it sounds a bit like BindableLinq - &amp;quot;&lt;em&gt;Live view is a LINQ query result that is kept constantly up-to-date without re-populating it every time its base data changes. This makes LiveLinq extremely useful in common data-binding scenarios where objects are edited and may be filtered in or out of views&lt;/em&gt;&amp;quot;. &lt;br&gt;
&lt;br&gt;
I haven't had a chance to try it out - will post something when I do - but am interested if anyone already has an opinion on similarities/differences...
&lt;/div&gt;</description><author>CraigD</author><pubDate>Wed, 11 Mar 2009 21:56:11 GMT</pubDate><guid isPermaLink="false">New Post: BindableLinq vs LiveLinq? 20090311095611P</guid></item><item><title>New Post: Group By in VB</title><link>http://bindablelinq.codeplex.com/Thread/View.aspx?ThreadId=48995</link><description>&lt;div style="line-height: normal;"&gt;I just downloaded the Bindable LINQ framework. I really like the looks of it. Unfortunately, using VB (Visual Studio 2008) I seem to be unable to get it to compile a Group By query using AsBindable. I've created &lt;a href="http://bindablelinq.codeplex.com/WorkItem/View.aspx?WorkItemId=7209"&gt;an issue&lt;/a&gt; report here. Has anyone else seen this problem, or has anyone successfully using Group By loginc with Bindable LINQ?&lt;br&gt;
&lt;br&gt;
Thanks,&lt;br&gt;
Benjamin  
&lt;/div&gt;</description><author>bjgrosse</author><pubDate>Tue, 03 Mar 2009 02:23:26 GMT</pubDate><guid isPermaLink="false">New Post: Group By in VB 20090303022326A</guid></item><item><title>Created Issue: Unable to Group By in VB</title><link>http://bindablelinq.codeplex.com/WorkItem/View.aspx?WorkItemId=7209</link><description>I seem to be completely unable to utilize Bindable Linq in a Group By query. I&amp;#39;ve downloaded the latest codebase and compiled without a problem. &lt;br /&gt;&lt;br /&gt;As an example of my problem, the following standard Linq works fine&amp;#58;&lt;br /&gt;&lt;br /&gt;DataContext &amp;#61; From p In people Group p By p.Gender Into Items &amp;#61; Group&lt;br /&gt;&lt;br /&gt;But when I add .AsBindable like this...&lt;br /&gt;&lt;br /&gt;DataContext &amp;#61; From p In people.AsBindable&amp;#40;&amp;#41; Group p By p.Gender Into Items &amp;#61; Group&lt;br /&gt;&lt;br /&gt;...I get the following compilation error&amp;#58;&lt;br /&gt;&lt;br /&gt;Overload resolution failed because no accessible &amp;#39;GroupBy&amp;#39; is most specific for these arguments&amp;#58;&lt;br /&gt;    Extension method &amp;#39;Public Function GroupBy&amp;#40;Of TKey, TResult&amp;#41;&amp;#40;keySelector As System.Func&amp;#40;Of Person, TKey&amp;#41;, resultSelector As System.Func&amp;#40;Of TKey, System.Collections.Generic.IEnumerable&amp;#40;Of Person&amp;#41;, TResult&amp;#41;, comparer As System.Collections.Generic.IEqualityComparer&amp;#40;Of TKey&amp;#41;&amp;#41; As System.Collections.Generic.IEnumerable&amp;#40;Of TResult&amp;#41;&amp;#39; defined in &amp;#39;System.Linq.Enumerable&amp;#39;&amp;#58; Not most specific.&lt;br /&gt;    Extension method &amp;#39;Public Function GroupBy&amp;#40;Of Person.Genders, Person, &amp;#60;anonymous type&amp;#62;&amp;#41;&amp;#40;keySelector As System.Func&amp;#40;Of Person, Person.Genders&amp;#41;, elementSelector As System.Func&amp;#40;Of Person, Person&amp;#41;, resultSelector As System.Func&amp;#40;Of Person.Genders, System.Collections.Generic.IEnumerable&amp;#40;Of Person&amp;#41;, &amp;#60;anonymous type&amp;#62;&amp;#41;&amp;#41; As System.Collections.Generic.IEnumerable&amp;#40;Of &amp;#60;anonymous type&amp;#62;&amp;#41;&amp;#39; defined in &amp;#39;System.Linq.Enumerable&amp;#39;&amp;#58; Not most specific.&lt;br /&gt;    Extension method &amp;#39;Public Function GroupBy&amp;#40;Of TKey, TResult&amp;#41;&amp;#40;keySelector As System.Linq.Expressions.Expression&amp;#40;Of System.Func&amp;#40;Of Person, TKey&amp;#41;&amp;#41;, resultSelector As System.Linq.Expressions.Expression&amp;#40;Of System.Func&amp;#40;Of TKey, Bindable.Linq.Interfaces.IBindableCollection&amp;#40;Of Person&amp;#41;, TResult&amp;#41;&amp;#41;, comparer As System.Collections.Generic.IEqualityComparer&amp;#40;Of TKey&amp;#41;&amp;#41; As Bindable.Linq.Interfaces.IBindableCollection&amp;#40;Of TResult&amp;#41;&amp;#39; defined in &amp;#39;Bindable.Linq.BindableEnumerable&amp;#39;&amp;#58; Not most specific.&lt;br /&gt;    Extension method &amp;#39;Public Function GroupBy&amp;#40;Of Person.Genders, Person, &amp;#60;anonymous type&amp;#62;&amp;#41;&amp;#40;keySelector As System.Linq.Expressions.Expression&amp;#40;Of System.Func&amp;#40;Of Person, Person.Genders&amp;#41;&amp;#41;, elementSelector As System.Linq.Expressions.Expression&amp;#40;Of System.Func&amp;#40;Of Person, Person&amp;#41;&amp;#41;, resultSelector As System.Linq.Expressions.Expression&amp;#40;Of System.Func&amp;#40;Of Person.Genders, Bindable.Linq.Interfaces.IBindableCollection&amp;#40;Of Person&amp;#41;, &amp;#60;anonymous type&amp;#62;&amp;#41;&amp;#41;&amp;#41; As Bindable.Linq.Interfaces.IBindableCollection&amp;#40;Of &amp;#60;anonymous type&amp;#62;&amp;#41;&amp;#39; defined in &amp;#39;Bindable.Linq.BindableEnumerable&amp;#39;&amp;#58; Not most specific.&lt;br /&gt;    Extension method &amp;#39;Public Function GroupBy&amp;#40;Of TKey, TResult&amp;#41;&amp;#40;keySelector As System.Linq.Expressions.Expression&amp;#40;Of System.Func&amp;#40;Of Person, TKey&amp;#41;&amp;#41;, resultSelector As System.Linq.Expressions.Expression&amp;#40;Of System.Func&amp;#40;Of TKey, Bindable.Linq.Interfaces.IBindableCollection&amp;#40;Of Person&amp;#41;, TResult&amp;#41;&amp;#41;, dependencyAnalysisMode As Bindable.Linq.DependencyDiscovery&amp;#41; As Bindable.Linq.Interfaces.IBindableCollection&amp;#40;Of TResult&amp;#41;&amp;#39; defined in &amp;#39;Bindable.Linq.BindableEnumerable&amp;#39;&amp;#58; Not most specific.&amp;#9;&lt;br /&gt;&lt;br /&gt;I&amp;#39;m not sure if this is a problem with my syntax &amp;#40;I&amp;#39;ve tried every variation I can come up with&amp;#41; or if Bindable Linq needs some tweaking to be compatible with VB.&lt;br /&gt;</description><author>bjgrosse</author><pubDate>Tue, 03 Mar 2009 02:16:30 GMT</pubDate><guid isPermaLink="false">Created Issue: Unable to Group By in VB 20090303021630A</guid></item><item><title>New Post: Bindable LINQ vs Continuous LINQ</title><link>http://www.codeplex.com/bindablelinq/Thread/View.aspx?ThreadId=47302</link><description>&lt;div style="line-height: normal;"&gt;I poked around a little and see from your Tech-Ed presentation that the author is aware of C-Linq, but would still value your opinions on how they compare/contrast.
&lt;/div&gt;</description><author>ky0ung123</author><pubDate>Tue, 17 Feb 2009 02:22:28 GMT</pubDate><guid isPermaLink="false">New Post: Bindable LINQ vs Continuous LINQ 20090217022228A</guid></item><item><title>New Post: Bindable LINQ vs Continuous LINQ</title><link>http://www.codeplex.com/bindablelinq/Thread/View.aspx?ThreadId=47302</link><description>&lt;div style="line-height: normal;"&gt;I was wondering if you have seen continuous LINQ and how Bindable LINQ compares/contrasts to that project.  Seems like they are similar in nature.
&lt;/div&gt;</description><author>ky0ung123</author><pubDate>Tue, 17 Feb 2009 01:25:03 GMT</pubDate><guid isPermaLink="false">New Post: Bindable LINQ vs Continuous LINQ 20090217012503A</guid></item><item><title>New Post: Linq to SQL -  collections aren't Observable</title><link>http://www.codeplex.com/bindablelinq/Thread/View.aspx?ThreadId=39917</link><description>&lt;div style="line-height: normal;"&gt;I have a Linq to SQL data access layer upon which I bind some WPF UI, particularly a grid.&amp;nbsp; The following works nicely, where SiteEntity.SiteTanks is a LINQ to SQL collection.&lt;br&gt;
&lt;br&gt;
Private IBindingList _siteTanks;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public IBindingList SiteTanks&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; get&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _siteTanks = this.SiteEntity.SiteTanks.GetNewBindingList();&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _siteTanks.ListChanged += new ListChangedEventHandler(_siteTanks_ListChanged);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return _siteTanks;&lt;br&gt;
&lt;br&gt;
I can &lt;br&gt;
a) add&amp;nbsp; entities to the underlying data source and the grid picks up the changes.&amp;nbsp; &lt;br&gt;
b) delete from - ditto (because I can call _siteTanks.Remove() in addition to the Linq to sql DeleteOnSubmit(instance)&lt;br&gt;
c) I can edit the entity properties and the ListChanged event fires, thus allowing me to know the data IsDirty.&lt;br&gt;
&lt;br&gt;
However, at some point I know that I will need to filter the list based on user actions,&amp;nbsp; eg adding a filter condition such as &amp;quot;ProductTypeID = 2&amp;quot;.&amp;nbsp; Hence my interest in Bindable LINQ.&lt;br&gt;
&lt;br&gt;
I have considered and tried an implementation using Bindable LINQ.&amp;nbsp; However none of the above work.&amp;nbsp; Editing the items on the list works, as point c), but the grid isn't notified.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;/div&gt;</description><author>rjempson</author><pubDate>Fri, 14 Nov 2008 05:46:26 GMT</pubDate><guid isPermaLink="false">New Post: Linq to SQL -  collections aren't Observable 20081114054626A</guid></item><item><title>New Post: Strong Name Key on DLL</title><link>http://www.codeplex.com/bindablelinq/Thread/View.aspx?ThreadId=39304</link><description>&lt;div style="line-height: normal;"&gt;It would be nice if the release DLL was signed so signed applications can load it. Being New BSD license it isn't a huge deal to recompile it, but it would be nice to not have to if possible.&lt;br&gt;
&lt;br&gt;
Otherwise very cool, this made my day when I found it today!
&lt;/div&gt;</description><author>BestSnowman</author><pubDate>Thu, 06 Nov 2008 03:37:14 GMT</pubDate><guid isPermaLink="false">New Post: Strong Name Key on DLL 20081106033714A</guid></item><item><title>New Post: Add support for System.Linq.IQueryable</title><link>http://www.codeplex.com/bindablelinq/Thread/View.aspx?ThreadId=30381</link><description>&lt;div style="line-height: normal;"&gt;Hi Norman, &lt;br&gt;
&lt;br&gt;
Since you'd be doing the operation yourself, you can control routing back to the UI thread, and controlling when the query is re-executed. This would be required because things like &amp;quot;wait 3 seconds for the user to stop typing&amp;quot; is a very UI-oriented thing (out of interest, I'd probably do this via an attached dependency property, and use Explicit bindings on a TextBox, and then have my ADP manage the timers and push the value when the timer ticked).&amp;nbsp; &lt;br&gt;
&lt;br&gt;
Here's an example of a super basic &amp;quot;integration point&amp;quot;:&lt;br&gt;
&lt;blockquote&gt;private static ObservableCollection&amp;lt;WeakReference&amp;gt; _allKnownCustomers = new ObservableCollection&amp;lt;WeakReference&amp;gt;();&lt;br&gt;
&lt;br&gt;
public static IBindableCollection&amp;lt;Customer&amp;gt; SearchForCustomers(string name) &lt;br&gt;
{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Start a background thread to fetch stuff from the DB using Stored Procs, web services, LINQ to SQL, whatever, using the &amp;quot;name&amp;quot; property&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // When it completes, use the Dispatcher to route the fetched items to the _allKnownCustomers collection. It'll raise events, and the query below get them and update...&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // This code is just performing an in-memory query on the items you fetched last time&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return _allKnownCustomers.Select(wr =&amp;gt; (Customer)wr.Target).Where(c =&amp;gt; c.Name.Contains(name)); &lt;br&gt;
}&lt;br&gt;
&lt;/blockquote&gt;The key here is that you're returning a bindable collection, which means as items can be added as they are yielded form the background thread, and the UI will get them. If you wanted to extend it to the point of doing live queries as the user types in a text box, you'd be doing similar things but with a more stateful object containing the query, and you'd cancel the current background thread and start a new one each time. &lt;br&gt;
&lt;br&gt;
There's a bunch of things you could customize with such an &amp;quot;integration point&amp;quot; framework:&lt;br&gt;
&lt;ul&gt;
    &lt;li&gt;How items are stored. Above I used a weak references, so the GC can clean them up when they aren't used. You might instead choose to use the Caching Application Block&lt;/li&gt;
    &lt;li&gt;The &amp;quot;scope&amp;quot; of the integration point and the items it manages (and tracks changes to). Per call, per some context, or maybe global.&amp;nbsp; &lt;/li&gt;
    &lt;li&gt;How you'll do conflict detection and resolution, and whether you'll only ever have one instance of any item at once (an IdentityMap pattern)&lt;/li&gt;
    &lt;li&gt;How you'll handle timeouts and drop outs in connectivity, via a Circuit Breaker pattern&lt;/li&gt;
    &lt;li&gt;How you'll receive updates. SQL query notifications, polling, or WCF duplex bindings&lt;/li&gt;
&lt;/ul&gt;
What's nice about this is that although many of these problems are tricky, it's easy to abstract them and build some common patterns around them. Then, you abstract the whole thing in an &amp;quot;integration point&amp;quot;. That integration point can be a service shared throughout your application, so that from the 3 views where you show the status of a job on a server, all 3 of them are always in sync, and yet you only have one active duplex channel or query notifications connection managed by the integration point. &lt;br&gt;
&lt;br&gt;
I'm hoping this could replace all external communication from my WPF applications. Conceptually, you treat external calls of any nature as discreet interactions, but the rest of your application is completely reactive. &lt;br&gt;
&lt;/div&gt;</description><author>stovellp</author><pubDate>Thu, 09 Oct 2008 16:13:45 GMT</pubDate><guid isPermaLink="false">New Post: Add support for System.Linq.IQueryable 20081009041345P</guid></item></channel></rss>