public RandomDataViewModel(RandomDataModel model) { _model = model; _model.PropertyChanged += OnPropertyChanged; StartGenerateCommand = new CommandHandler(parameter => !_model.IsDataGenerating, StartGenerateData); StopGenerateCommand = new CommandHandler(parameter => _model.IsDataGenerating, parameter => _tokenSource.Cancel()); }
public static MainWindow Composite() { var generator = new WebRandomGeneratorService("https://localhost:44397/random/get"); var randomDataModel = new RandomDataModel(generator); var randomDataViewModel = new RandomDataViewModel(randomDataModel); return(new MainWindow(randomDataViewModel)); }
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) { string Provider = bindingContext.ValueProvider.GetValue("provider").AttemptedValue; AbstractDataModel model; switch (Provider) { case "google": model = new GoogleDataModel(); break; case "yahoo": model = new YahooDataModel(); break; default: model = new RandomDataModel(); break; } return(model); }