/// <summary> /// Loads Product informations for a company /// </summary> /// <param name="company"></param> /// <returns></returns> public List <BikeProduct> LoadProductByCompany(Company company) { List <BikeProduct> result = new List <BikeProduct>(); using (var service = new SampleService.SampleServiceClient()) { List <Product> response = service.LoadProductByCompany(company); response.ForEach(x => { var bike = new BikeProduct() { Id = x.Id, Name = x.Name, InstallationDate = x.InstallationDate, }; ConvertPropertyBag(x, bike); result.Add(bike); }); } return(result); }
private BikeProduct ConvertPropertyBag(Product x, BikeProduct bike) { try { if (x.PropertyBag.Keys.Contains("Articlenumber")) { bike.Articlenumber = x.PropertyBag["Articlenumber"].ToString(); } if (x.PropertyBag.Keys.Contains("MakeFlag")) { bike.MakeFlag = (bool)x.PropertyBag["MakeFlag"]; } if (x.PropertyBag.Keys.Contains("FinishedGoodsFlag")) { bike.FinishedGoodsFlag = (bool)x.PropertyBag["FinishedGoodsFlag"]; } if (x.PropertyBag.Keys.Contains("Color")) { bike.Color = (string)x.PropertyBag["Color"]; } if (x.PropertyBag.Keys.Contains("StandardCost")) { bike.StandardCost = (decimal)x.PropertyBag["StandardCost"]; } if (x.PropertyBag.Keys.Contains("ListPrice")) { bike.ListPrice = (decimal)x.PropertyBag["ListPrice"]; } if (x.PropertyBag.Keys.Contains("Size")) { bike.Size = (string)x.PropertyBag["Size"]; } if (x.PropertyBag.Keys.Contains("SizeMeasure")) { bike.SizeMeasure = (string)x.PropertyBag["SizeMeasure"]; } if (x.PropertyBag.Keys.Contains("WeightMeasure")) { bike.WeightMeasure = (string)x.PropertyBag["WeightMeasure"]; } if (x.PropertyBag.Keys.Contains("Weight")) { bike.Weight = (decimal?)x.PropertyBag["Weight"]; } if (x.PropertyBag.Keys.Contains("DaysToManufacture")) { bike.DaysToManufacture = (int)x.PropertyBag["DaysToManufacture"]; } if (x.PropertyBag.Keys.Contains("ProductLine")) { bike.ProductLine = (string)x.PropertyBag["ProductLine"]; } if (x.PropertyBag.Keys.Contains("Class")) { bike.Class = (string)x.PropertyBag["Class"]; } if (x.PropertyBag.Keys.Contains("Style")) { bike.Style = (string)x.PropertyBag["Style"]; } if (x.PropertyBag.Keys.Contains("SubCategoryId")) { bike.SubCategoryId = (int)x.PropertyBag["SubCategoryId"]; } if (x.PropertyBag.Keys.Contains("ProductModelId")) { bike.ProductModelId = (int)x.PropertyBag["ProductModelId"]; } if (x.PropertyBag.Keys.Contains("SellEndDate")) { bike.SellEndDate = (DateTime?)x.PropertyBag["SellEndDate"]; } if (x.PropertyBag.Keys.Contains("CustomerOrderQty")) { bike.CustomerOrderQty = (int)x.PropertyBag["CustomerOrderQty"]; } } catch (Exception ex) { logger.Warning("could not convert propertybag!", ex); } return(bike); }