Absolutely. Things are funnier this way. On Fri, Oct 24, 2008 at 21:19, Atsushi Eno <[EMAIL PROTECTED]> wrote:
> > OK, I'd abuse right to "commit then be accused" ;-) > > Thanks, > Atsushi Eno > > Pascal Craponne wrote: > > Hi Atsushi. > > > > I think you can commit (it wasn't probably worth asking :)). > > > > Pascal. > > > > On Fri, Oct 24, 2008 at 20:34, Atsushi Eno <[EMAIL PROTECTED] > > <mailto:[EMAIL PROTECTED]>> wrote: > > > > Hi, > > > > I have a small patch to implement {what the subject says}, which > > is somehow used in my ASP.NET <http://ASP.NET> DynamicData sample. > > > > I'm not sure if it is what DBLinq exactly wants, but here is > > what I tried against .NET (pass 0 to 2 arguments): > > > > ---- > > using System; > > using System.Collections.Generic; > > using System.Data.Linq; > > public class Test { > > public static void Main (string [] args) > > { > > var er = new EntityRef<Foo> > > (Array.ConvertAll<string,Foo> ( > > args, s => new Foo (s))); > > Console.WriteLine (er.HasLoadedOrAssignedValue); > > Console.WriteLine (er.Entity); > > } > > } > > public class Foo { > > public Foo (string s) > > { > > S = s; > > } > > public string S; > > public override string ToString () > > { > > return "<" + S + ">"; > > } > > } > > ---- > > > > Atsushi Eno > > > > > > > > Index: src/DbLinq/Data/Linq/EntityRef.cs > > =================================================================== > > --- src/DbLinq/Data/Linq/EntityRef.cs (revision 115081) > > +++ src/DbLinq/Data/Linq/EntityRef.cs (working copy) > > @@ -42,9 +42,11 @@ > > { > > private TEntity entity; > > private bool hasLoadedOrAssignedValue; > > + private IEnumerable<TEntity> source; > > > > public EntityRef(TEntity entity) > > { > > + this.source = null; > > this.entity = entity; > > hasLoadedOrAssignedValue = true; > > } > > @@ -52,11 +54,14 @@ > > [DbLinqToDo] > > public EntityRef(IEnumerable<TEntity> source) > > { > > - throw new NotImplementedException(); > > + this.source = source; > > + hasLoadedOrAssignedValue = false; > > + entity = null; > > } > > > > public EntityRef(EntityRef<TEntity> entityRef) > > { > > + this.source = null; > > this.entity = entityRef.Entity; > > hasLoadedOrAssignedValue = true; > > } > > @@ -65,6 +70,14 @@ > > { > > get > > { > > + if (source != null) { > > + foreach (var s in source) { > > + if (entity != null) > > + throw new InvalidOperationException > > ("Sequence contains more than one element"); > > + entity = null; > > + } > > + source = null; > > + } > > return entity; > > } > > set > > > > > > > > > > -- > > Pascal. > > > > jabber/gtalk: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > > msn: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > > > > > > > > > > > > -- Pascal. jabber/gtalk: [EMAIL PROTECTED] msn: [EMAIL PROTECTED] --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "DbLinq" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/dblinq?hl=en -~----------~----~----~----~------~----~------~--~---
