private HomeProductWidegtForm ProductFormWidgetFormModel(IFormCollection formCollection) { var model = new HomeProductWidegtForm(); var submodel = new HomeProductWidgetSetting(); model.Name = formCollection["name"]; submodel.NumberofProducts = Convert.ToInt16(formCollection[$"settings[numberofProducts]"]); model.WidgetZoneId = int.Parse(formCollection["widgetZoneId"]); int.TryParse(formCollection["displayOrder"], out int displayOrder); model.DisplayOrder = displayOrder; if (DateTimeOffset.TryParse(formCollection["publishStart"], out DateTimeOffset publishStart)) { model.PublishStart = publishStart; } if (DateTimeOffset.TryParse(formCollection["publishEnd"], out DateTimeOffset publishEnd)) { model.PublishEnd = publishEnd; } int numberOfItems = int.Parse(formCollection["numberOfItems"]); for (var i = 0; i < numberOfItems; i++) { var productId = formCollection[$"settings[productIds][{i}][productId]"]; submodel.ProductIds.Add(new Pname { ProductId = productId }); } model.Settings = submodel; return(model); }
public IActionResult Get(long id) { var widgetInstance = _widgetInstanceRepository.Query().FirstOrDefault(x => x.Id == id); var model = new HomeProductWidegtForm { Id = widgetInstance.Id, Name = widgetInstance.Name, WidgetZoneId = widgetInstance.WidgetZoneId, PublishStart = widgetInstance.PublishStart, PublishEnd = widgetInstance.PublishEnd, DisplayOrder = widgetInstance.DisplayOrder, Settings = JsonConvert.DeserializeObject <HomeProductWidgetSetting>(widgetInstance.Data) }; return(Json(model)); }