public SummaryViewModel(IFundsDataService fundsdataservice, IEventAggregator eventaggregator)
        {
            //This userId should be set to logged user id on authentication/Authorisation is complemted
            // Now UserId is assumed as from app.config file (i.e..due to LocalDB instance)
            this.LoggedUserId = UtilityMethods.GetDefaultLoggedUserIdFromConfig();

            if (fundsdataservice == null) throw new ArgumentNullException("fundsdataservice");
            if (eventaggregator == null) throw new ArgumentNullException("eventAggregator");
          
            this.eventAggregator = eventaggregator;
            this.fundsDataService = fundsdataservice;
            GetAllStocksSummary();
            this.eventAggregator.GetEvent<UpdateStockSummary>().Subscribe(GetAllStocksSummary);

          
        }
        public BlotterViewModel(IFundsDataService fundsdataservice, IEventAggregator eventaggregator)
        {
            //This userId should be set to logged user id on authentication/Authorisation is complemted
            // Now UserId is assumed as from app.config file (i.e..due to LocalDB instance)
            this.LoggedUserId = UtilityMethods.GetDefaultLoggedUserIdFromConfig();

            if (fundsdataservice == null) throw new ArgumentNullException("fundsdataservice");
            if (eventaggregator == null) throw new ArgumentNullException("eventAggregator");
          
            this.eventAggregator = eventaggregator;
            this.fundsDataService = fundsdataservice;
            this.ConfirmationRequest = new InteractionRequest<IConfirmation>();
            GetAllStocksDetails();
            this.eventAggregator.GetEvent<StockUpdatedEvent>().Subscribe(GetAllStocksDetails);
            this.eventAggregator.GetEvent<CancelStockSelectedEvent>().Subscribe(CancelSelectedStock);
            CancelSelectedStock();
            this.DeleteStockCommand = new DelegateCommand<object>(this.DeleteSelectedStockDetails);
           
        }
        public StockViewModel(IFundsDataService fundsdataservice, IEventAggregator eventaggregator)
        {
            //This userId should be set to logged user id on authentication/Authorisation is complemted
            // Now UserId is assumed as from app.config file (i.e..due to LocalDB instance)
            this.LoggedUserId = UtilityMethods.GetDefaultLoggedUserIdFromConfig();

            if (fundsdataservice == null) throw new ArgumentNullException("fundsdataservice");
            if (eventaggregator == null) throw new ArgumentNullException("eventAggregator");
            this.NotificationRequest = new InteractionRequest<INotification>();
            validityMessage = string.Empty;
            this.eventAggregator = eventaggregator;
            this.fundsDataService = fundsdataservice;
            this.StockTypes = this.fundsDataService.GetAllStockTypeDetails();
            this.SaveStockDetailCommand = new DelegateCommand<object>(this.SaveStockDetails, this.CanSubmit);
            this.CancelStockDetailCommand = new DelegateCommand<object>(this.CancelStockDetails);
            this.eventAggregator.GetEvent<StockSelectedEvent>().Subscribe(BindSelectedStockDetails);
            ResetEntryValues();
            this.eventAggregator.GetEvent<CancelStockSelectedEvent>().Subscribe(ResetEntryValues);
            
        }