public void Create(SampleData data) { //call other business _langguageServices.DoSomething(new LanguageData() { Code = data.LanguageCode }); data.CreatedDate = DateTime.Now; Thread.Sleep(1000); //sleep to simulate something to do //after all push to message queue using distributed services //push command to store by repository engine var entity = new Sample() { Id = data.Id, Version = data.Version, Name = data.Name }; var distributedCommandEntity = new DistributedCommandEntity <Sample>(entity, EntityAction.Insert); _distributedServices.PublishEntity(distributedCommandEntity); }