ah.... IRange should be mapped as <component> (you don't need to change your DB only your OO design)
2010/2/13 Fabio Maulo <[email protected]> > that is basically a design matter. > The two dates should be two properties of a IRange<DateTime> > > http://fabiomaulo.blogspot.com/2009/10/nhibernatevalidator-extending_26.html > <http://fabiomaulo.blogspot.com/2009/10/nhibernatevalidator-extending_26.html> > 2010/2/13 Bear <[email protected]> > > Hi, >> >> I know I can extend the Loquacious configuration from this post; >> http://fabiomaulo.blogspot.com/2009/10/nhibernatevalidator-extending.html >> >> I have successfully created the attribute, validator and extension for >> what I want to do, which is ultimately to compare dates; >> >> Consider this simple example (attribute, validator and extension not >> shown); >> >> public class MyEvent >> { >> public DateTime StartDate >> public DateTime EndDate >> } >> >> public class MyEventValidatorDef : ValidatorDef<MyEvent> >> { >> var someDate = new DateTime(2010,2,13); >> Define(myEvent => myEvent.StartDate).IsNotPast(someDate) >> } >> >> Now, ideally, I'd like to compare the two dates of MyEvent, I know I >> could do; >> >> ValidateInstance.By((myEvent,context) => { >> >> bool isValid = true; >> >> if ( myEvent.StartDate > myEvent.EndDate ) >> isValid = false; >> >> return isValid; >> }) >> >> BUT, I have other classes that have Dates on them that I want to >> compare, so ideally I want to have a reusable constraints something >> like; >> >> public class MyEventValidatorDef : ValidatorDef<MyEvent> >> { >> Define(myEvent => myEvent.StartDate).IsNotPast(myEvent => >> myEvent.EndDate); >> Define(myEvent => myEvent.EndDate).IsNotBefore(myEvent => >> myEvent.StartDate); >> } >> >> What's the best way to go about this? >> >> Cheers, >> B. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "nhusers" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected]<nhusers%[email protected]> >> . >> For more options, visit this group at >> http://groups.google.com/group/nhusers?hl=en. >> >> > > > -- > Fabio Maulo > > -- Fabio Maulo -- You received this message because you are subscribed to the Google Groups "nhusers" 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/nhusers?hl=en.
