If you are spiking a greenfield app with CQRS using nhibernate or any
orm will lead to a complete and utter failure.

On Wed, Mar 24, 2010 at 8:48 PM, Jason Meckley <[email protected]> wrote:
> I am spiking an example of CQRS as described by Udi. I am using rhino
> service bus to process commands and then fire events in the domain.
> I'm using a 'To Do List' for the spike
>
> public void Consume(NewQuickTask message)
> {
>        var task=
> session.Get<User>(message.UserId).AddTask(message.Title);
>        domainEvents.Raise(new QuickTaskAdded{Task= task});
> }
>
> where domainEvents.Raise() will resolve all the Handles<T> from the
> container and execute against each one. for example
> class InsertNewQuickTaskIntoPersisentViewModel:
> Handles<QuickTaskAdded>
> {
>      public void Handle(QuickTaskAdded arg)
>      {
>             var pvm = mapper.Map<Task, ListOfItemsToDo>(arg.Task);
>             session.Save(pvm);
>      }
> }
>
> ListOfItemsToDo uses the assigned POID. this way it has the same id as
> the Task in the domain. Task uses HiLo POID. I know I can call
> session.Save(new Task()); to get the id, but I'm adding the Task to
> the User to avoid the explicit call to session.
>
> however I need the id from Task to insert new records into the PVM
> (persistent view model). Is there another way to do this with HiLo? I
> could probably use Guid.Comb, but I prefer numbers since they are
> easier to read when logging and generating urls. I'm trying to avoid
> database POID strategies for now.
>
> --
> 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.
>
>



-- 
Les erreurs de grammaire et de syntaxe ont été incluses pour m'assurer
de votre attention

-- 
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.

Reply via email to