I think the way to go for this is to follow Jon's suggestion of having a single parameter method that can be used for if there's only one column, and the (currently available) collection property for use when you need to have more than one column, or if you need to modify or interrogate the collection at convention time. Paul and myself have already touched on how we can clean up the APIs a bit so they're not being polluted (and complicated) by the presence of methods and properties that are only of use for the conventions, and things like this will be the subject of cleanup. Until we get to the point where we can clean it up, there are going to be some areas that are more complicated than may be necessary. You guys are just going to have to get along until that time.
On Mon, Mar 30, 2009 at 4:26 PM, James Gregory <jagregory....@gmail.com>wrote: > Again, we had this previously and it suffers from the problem of not being > able to interrogate or modify the collection at convention time. > > > On Mon, Mar 30, 2009 at 4:06 PM, Paul Yoder <paulyo...@gmail.com> wrote: > >> What about using a params string array in the method parameter to support >> single and multiple column names? >> >> So instead of >> >> Map(x => x.BusinessName).ColumnNames(c => >> { >> c.AddColumn("FirmCol1"); >> c.AddColumn("FirmCol2"); >> } >> >> it could be >> >> Map(x => x.BusinessName).ColumnNames("FirmCol1", "FirmCol2"); >> >> >> Paul >> >> >> >> On Sat, Mar 28, 2009 at 6:00 PM, Paul Batum <paul.ba...@gmail.com> wrote: >> >>> Hi Lars, >>> >>> It looks like its been changed to support multiple columns. For now, this >>> should work: >>> >>> Map(x => x.BusinessName).ColumnNames.Add("FirmName") >>> >>> I'm not sure if I like this change. James, did you consider achieving >>> this with two methods, one that takes a string and another that takes a >>> lambda with which you can specify multiple columns? I'm thinking something >>> like: >>> >>> Map(x => x.BusinessName).ColumnName("FirmName"); >>> >>> and >>> >>> Map(x => x.BusinessName).ColumnNames(c => >>> { >>> c.AddColumn("FirmCol1"); >>> c.AddColumn("FirmCol2"); >>> } >>> >>> Thoughts? >>> >>> >>> On Sun, Mar 29, 2009 at 9:39 AM, Lars <larc...@yahoo.com> wrote: >>> >>>> >>>> I see that TheColumnNameIs has been replaced with ColumnName in >>>> IIdentityPart, but I can't figure out what it was changed to in >>>> PropertyMap. >>>> >>>> The Map statement is: >>>> >>>> Map(x => x.BusinessName).TheColumnNameIs("FirmName"); >>>> >>>> But this no longer works. >>>> >>>> Thanks, Lars >>>> >>>> >>>> >>> >>> >>> >> >> >> >> > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Fluent NHibernate" group. To post to this group, send email to fluent-nhibernate@googlegroups.com To unsubscribe from this group, send email to fluent-nhibernate+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/fluent-nhibernate?hl=en -~----------~----~----~----~------~----~------~--~---