/// <summary> /// Implementación de <see cref="IRequestHandler{TRequest, TResponse}.Handle(TRequest, CancellationToken)"/> /// </summary> public async Task <int> Handle(Request request, CancellationToken cancellationToken) { int response = 0; try { CarModelModel model = await _CarModelRepository.Get(request.BrandId, request.Name); if (model == null) { ModelInfo info = new ModelInfo { BrandId = request.BrandId, Name = request.Name }; await _CarModelRepository.Create(info); await _CarModelRepository.Save(); response = info.Id; } else { response = model.Id; } } catch (Exception ex) { CommandExceptionHandler.Handle(ex, request); } return(response); }
public CarManufacturerViewModel() { CarManufacturers = new ObservableCollection <CarManufacturerModel> { CarManufacturerModel.Create("Audi", CarModelModel.Create(new string[] { "A1", "A2", "A3", "A4", "A5" })), CarManufacturerModel.Create("Mercedes", CarModelModel.Create(new string[] { "A-Class", "B-Class", "C-Class", "E-Class", "S-Class" })), CarManufacturerModel.Create("BMW", CarModelModel.Create(new string[] { "1-Serie", "2-Serie", "3-Serie", "4-Serie", "5-Serie" })), CarManufacturerModel.Create("Volkswagen", CarModelModel.Create(new string[] { "Golf", "Passat", "Arteon", "T-Cross", "Up!" })), CarManufacturerModel.Create("Volvo", CarModelModel.Create(new string[] { "V60", "V70", "XC60", "XC90", "S90" })) }; //SelectedCarManufacturer = CarManufacturers.First(); }
/// <summary> /// Implementación de <see cref="ICarModelRepository.Get(int, string)"/> /// </summary> public async Task <CarModelModel> Get(int brandId, string name) { CarModelModel result = null; try { var query = from model in CarModelQuery(Context) where model.BrandId == brandId && model.Name == name select model; result = await query.SingleOrDefaultAsync(); } catch (Exception ex) { throw; } return(result); }