Glue code for validation

Wouldn’t it be nice to be able to just call

var report = myDto.Validate();

without sacrificing extensibillity, testabillity, etc? What about at this,

public static class ObjectExtensions
{
        public static ValidationReport Validate<Subject>(this Subject subject)
        {
              return Container.GetInstance<IValidator<Subject>>().Validate(subject);
        }

        public static ValidationReport Validate<Subject>(this Subject subject, string validatorName)
        {
	       return Container.GetInstance<IValidator<Subject>>(validatorName).Validate(subject);
        }
}

where Container is just a simple static gateway for an IoC-container?

Kick it on dotnet-kicks.de Kick it on DotNetKicks.com
BjRo posted at 2008-11-10 Category: Uncategorized | Tags: , ,

Leave a Reply

(Ctrl + Enter)