public void Handle(RegisterEmployee command) { var employee = _repository.Get(Guid.NewGuid()); employee.Register( command.SocialSecurityNumber, command.FirstName, command.LastName, command.EmployedFrom ); }
public void Configure(IConfigure configure) { var dataPath = HttpContext.Current.Server.MapPath("~/App_Data"); configure .Serialization .UsingJson() .Events .UsingRavenDB(e=>e.WithUrl("http://localhost:8080").WithDefaultDatabase("QuickStart")) //.UsingRavenDBEmbedded(e=>e.LocatedAt(dataPath).WithManagementStudio()) .Events .Asynchronous(e=>e.UsingSignalR()) .DefaultStorage .UsingRavenDB(e => e.WithUrl("http://localhost:8080").WithDefaultDatabase("QuickStart")) //.UsingRavenDBEmbedded(e=>e.LocatedAt(dataPath)) .Frontend .Web(w=> { w.AsSinglePageApplication(); w.PathsToNamespaces.Clear(); w.PathsToNamespaces.Add("Features/**/", "Bifrost.QuickStart.Features.**."); w.PathsToNamespaces.Add("/Features/**/", "Bifrost.QuickStart.Features.**."); w.NamespaceMapper.Add("Bifrost.QuickStart.Features.**.", "Bifrost.QuickStart.Domain.HumanResources.**."); w.NamespaceMapper.Add("Bifrost.QuickStart.Features.**.", "Bifrost.QuickStart.Read.HumanResources.**."); }) .WithMimir(); var validatorProvider = configure.Container.Get<ICommandValidatorProvider>(); var inputValidator = validatorProvider.GetInputValidatorFor(typeof (RegisterEmployee)); var businessValidator = validatorProvider.GetBusinessValidatorFor(typeof (RegisterEmployee)); var command = new RegisterEmployee() { SocialSecurityNumber = "invalid" }; var inputResult = inputValidator.ValidateFor(command); var businessResult = businessValidator.ValidateFor(command); }