public ActionResult Add(ResourceAddViewModel resourceVM, IFormCollection formCollection) { SetSessionVariables(); resourceVM.CreatedBy = GetSessionObject().UserID; resourceVM.CreatedDateTime = DateTime.Now; string DuplicateName = ""; string OriginalName = ""; //Convert.ToString(ConfigurationManager.AppSettings["ResourceFilePath"]); string UploadRootPath = "resource"; string uploadsFolder = "\\image\\"; string serverUploadsFolder = Path.Combine(hostingEnvironment.WebRootPath, UploadRootPath); serverUploadsFolder += uploadsFolder; if (!Directory.Exists(serverUploadsFolder)) { Directory.CreateDirectory(serverUploadsFolder); } //Resource image uploader if (resourceVM.ResourcePlanFile != null) { OriginalName = resourceVM.ResourcePlanFile.FileName; string extension = Path.GetExtension(OriginalName); DuplicateName = DateTime.Now.ToString("yyyyMMddHHmmss") + extension; string filePath = Path.Combine(serverUploadsFolder, DuplicateName); resourceVM.ResourcePlanFile.CopyTo(new FileStream(filePath, FileMode.Create)); resourceVM.ResourceFilePath = "\\" + UploadRootPath + uploadsFolder + DuplicateName; } Resource resource = resourceVM.GetObject(); try { using (HttpClient client = new HttpClient()) { client.BaseAddress = new Uri(Common.Instance.ApiResourceControllerName); var postTask = client.PostAsJsonAsync <Resource>(Common.Instance.ApiResourceAdd, resource); postTask.Wait(); var result = postTask.Result; if (result.IsSuccessStatusCode) { var readTask = result.Content.ReadAsAsync <ServiceResult <Resource> >().Result; } } } catch { ModelState.AddModelError(string.Empty, "Server error. Please contact administrator"); } return(RedirectToAction("List")); }
public async Task <ActionResult> Add() { SetSessionVariables(); ServiceResult <List <ResourceResponse> > result = null; List <ResourceResponse> resourceTypes = null; ResourceAddViewModel model = new ResourceAddViewModel(); try { using (HttpClient client = new HttpClient()) { client.BaseAddress = new Uri(Common.Instance.ApiResourceMasterControllerName); var readTask = await client.GetAsync(Common.Instance.ApiResourceMasterGetTypes); result = await readTask.Content.ReadAsAsync <ServiceResult <List <ResourceResponse> > >(); resourceTypes = result.Result; model = new ResourceAddViewModel(); model.SetViewModel(resourceTypes); } } catch { ModelState.AddModelError(string.Empty, "Server error.Please contact administrator"); } return(View(model)); }