Esempio n. 1
0
        public DashBoardViewModel(IDomainCommandBus domainCommandBus
                                  , IReportingRepository reportingRepository
                                  , IReportingUpdatesBus reportingUpdatesBus)
            : base(Name)
        {
            _reportingRepository = reportingRepository;

            this.domainCommandBus = domainCommandBus;

            this.Add = new DelegateCommand(o =>
            {
                this.domainCommandBus.Publish(new AddNewPropertyDomainCommand()
                {
                    Name  = this.newName,
                    Price = this.newPrice
                });

                this.NewName  = string.Empty;
                this.newPrice = 0.0m;
            });

            Observable.FromEventPattern <EventArgs <string> >(reportingUpdatesBus, "Update")
            .Subscribe(pattern =>
                       Dispatcher.BeginInvoke(new Action(RefreshData)));
        }
        public InMemorySystemUnderTest(IDomainCommandBus commandBus
                                       , IReportingUpdatesBus reportingUpdatesBus
                                       , IReportingRepository reportingRepository)
        {
            _commandBus = commandBus;

            _reportingUpdatesBus = reportingUpdatesBus;

            ReportingRepository = reportingRepository;
        }