...although.. this moves the validation logic out of the domain class, which
might not be very cool ;)

On Wed, Feb 11, 2009 at 5:32 PM, Simone Busoli <[email protected]>wrote:

> Cool!
>
>
> On Wed, Feb 11, 2009 at 5:26 PM, Fabio Maulo <[email protected]> wrote:
>
>> Hi.I'm going to add a new way to map validators trough an implementation
>> based on fluent-interface.
>> This will be the 3th kind of embedded configuration: Reflection, XML, FI
>> The FI is "strogly-typed" as Reflection but it is external (from the point
>> of view of an entity-implementation) as XML.
>>
>> For the ValidatorMode feature I would like to equate FI to Reflection
>> (XmlOverAttributeClassMapping).
>>
>> The API should look like:
>>
>> var v = new ValidationDef<Person>();
>> v.Define(x=>x.Name).AsNotNull().AsNotEmpty();
>>
>> v.Define(x=>x.Surname).AsNotNull().AsNotEmpty().WithMaxLength(10).WithMinLength(3);
>> v.Define(x=>x.Assoc).MustBeValid();
>>
>>  and/or
>>
>>     public class PersonValidationDef : ValidationDef<Person>
>>     {
>>         public PersonValidationDef()
>>         {
>>           Define(x=>x.Name).AsNotNull().AsNotEmpty();
>>
>>  
>> Define(x=>x.Surname).AsNotNull().AsNotEmpty().WithMaxLength(10).WithMinLength(3);
>>           Define(x=>x.Assoc).MustBeValid();
>>         }
>>     }
>>
>> Validators available will be strongly-typed that mean, for example, that
>> giving a DateTime property (DateTime or DateTime?) only 2 validators will be
>> available
>> var v = new ValidationDef<Person>();
>> v.Define(x=>x.BornDate).  here you will see only IsInThePast
>> and IsInTheFuture
>>
>> Obviously each one may implements his extension methods.
>>
>> Thoughts?
>> --
>> Fabio Maulo
>>
>> >>
>>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"NHibernate Contrib - Development Group" 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.ar/group/nhcdevs?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to