the dll for morelinq is 57kb. I don't know your deployment situation, but what about ILMerge'ing all the dll/exe into a single exe if you are deploying an exe.
On Fri, Jan 24, 2014 at 3:55 PM, Mike Christensen <[email protected]>wrote: > Very cool! However, this is for an open source project so I don't want to > add any more external dependencies to the project, since users will have to > download those too. Thanks! > > Mike > > > On Fri, Jan 24, 2014 at 12:44 PM, Fran Knebels <[email protected]> wrote: > >> you might want to try using MoreLinq. MoreLinq adds a DistinctBy >> extension method. >> >> I setup a little test. >> >> using (ISession session = SessionFactory.OpenSession()) >> { >> using (ITransaction tx = session.BeginTransaction()) >> { >> var person = new Person { Name = "Fred" }; >> session.Save(person); >> var person1 = new Person { Name = "Fred" }; >> session.Save(person1); >> var person2 = new Person { Name = "Fred" }; >> session.Save(person2); >> var person3 = new Person { Name = "Fred" }; >> session.Save(person3); >> var person4 = new Person { Name = "Fred" }; >> session.Save(person4); >> >> session.Flush(); >> >> var personList = (from p in session.Query<Person>() >> select p).DistinctBy(x => new { x.Name }).ToList(); >> >> >> >> >> >> tx.Rollback(); >> } >> } >> >> personList return 1 person. >> >> >> On Fri, Jan 24, 2014 at 3:31 PM, Mike Christensen <[email protected]>wrote: >> >>> I basically want this query: >>> >>> select distinct name from mytable order by name; >>> >>> The following works, but I find it rather overly complex: >>> >>> var formSyn = session.QueryOver<Models.NlpFormSynonyms>() >>> .OrderBy(p => p.Name).Asc >>> .Select(s => s.Name) >>> >>> >>> .RootCriteria.SetProjection(Projections.Distinct(Projections.Property<Models.NlpFormSynonyms>(p >>> => p.Name))) >>> .List<Models.NlpFormSynonyms>(); >>> >>> >>> I've also tried this: >>> >>> var formSyn = session.QueryOver<Models.NlpFormSynonyms>() >>> .OrderBy(p => p.Name).Asc >>> .Select(s => s.Name) >>> .TransformUsing(Transformers.DistinctRootEntity) >>> .List(); >>> >>> Which looks nicer, but causes the runtime exception: >>> >>> An unhandled exception of type >>> 'NHibernate.Exceptions.GenericADOException' occurred in NHibernate.dll >>> >>> Additional information: Unable to perform find[SQL: SQL not available] >>> >>> What's the best way to do this? Thanks! >>> >>> Mike >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "nhusers" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To post to this group, send email to [email protected]. >>> Visit this group at http://groups.google.com/group/nhusers. >>> For more options, visit https://groups.google.com/groups/opt_out. >>> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "nhusers" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/nhusers. >> For more options, visit https://groups.google.com/groups/opt_out. >> > > -- > You received this message because you are subscribed to the Google Groups > "nhusers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/nhusers. > For more options, visit https://groups.google.com/groups/opt_out. > -- You received this message because you are subscribed to the Google Groups "nhusers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/nhusers. For more options, visit https://groups.google.com/groups/opt_out.
