public ActionResult Add(KnowledgebaseViewModel knowledgebaseViewModel) { try { // ReSharper disable once JoinDeclarationAndInitializer // ReSharper disable once CollectionNeverQueried.Local var knowledgebaselist = new List <KnowledgebaseAttachments>(); var knowledgebase = new Knowledgebase(); var knowledgebaseDetails = new KnowledgebaseDetails(); var knowledgebaseAttachmentsDetails = new KnowledgebaseAttachmentsDetails(); var knowledgebaseAttachmentsDetailsList = new List <KnowledgebaseAttachmentsDetails>(); if (ModelState.IsValid) { knowledgebase.Subject = knowledgebaseViewModel.Subject; knowledgebase.Status = knowledgebaseViewModel.Status; knowledgebase.KnowledgebaseTypeId = knowledgebaseViewModel.KnowledgebaseTypeId; knowledgebase.CreateDate = DateTime.Now; knowledgebase.KnowledgebaseId = 0; knowledgebase.UserId = Convert.ToInt32(_sessionHandler.UserId); knowledgebase.CategoryId = knowledgebaseViewModel.CategoryId; knowledgebaseDetails.Contents = knowledgebaseViewModel.Contents; knowledgebaseDetails.Keywords = knowledgebaseViewModel.Keywords; knowledgebaseDetails.KnowledgebaseDetailsId = 0; for (int i = 1; i <= 3; i++) { var filename = "fileupload_" + Convert.ToString(i); var file = Request.Files[filename]; if (file != null && file.ContentLength > 0) { var knowledgebaseAttachments1 = new KnowledgebaseAttachments(); string extension = Path.GetExtension(file.FileName); var myUniqueFileName = String.Concat(Guid.NewGuid(), extension); knowledgebaseAttachments1.AttachmentsName = myUniqueFileName; knowledgebaseAttachments1.AttachmentsType = extension; using (var binaryReader = new BinaryReader(file.InputStream)) { byte[] fileSize = binaryReader.ReadBytes(file.ContentLength); knowledgebaseAttachmentsDetails.AttachmentBytes = fileSize; } knowledgebaselist.Add(knowledgebaseAttachments1); knowledgebaseAttachmentsDetailsList.Add(knowledgebaseAttachmentsDetails); } } _knowledgebase.AddKnowledgebase(knowledgebase, knowledgebaselist, knowledgebaseDetails, knowledgebaseAttachmentsDetailsList); TempData["KnowledgebaseMessage"] = "Your Article Added Successfully"; } knowledgebaseViewModel.ListofCategory = _category.GetAllActiveSelectListItemCategory(); knowledgebaseViewModel.ListofKnowledgebaseType = _knowledgebase.KnowledgebaseTypeList(); return(View(knowledgebaseViewModel)); } catch (Exception) { throw; } }
public ActionResult Edit(EditKnowledgebaseViewModel editKnowledgebaseViewModel) { try { // ReSharper disable once JoinDeclarationAndInitializer // ReSharper disable once CollectionNeverQueried.Local var knowledgebaselist = new List <KnowledgebaseAttachments>(); var knowledgebase = new Knowledgebase(); var knowledgebaseDetails = new KnowledgebaseDetails(); var knowledgebaseAttachmentsDetails = new KnowledgebaseAttachmentsDetails(); var knowledgebaseAttachmentsDetailsList = new List <KnowledgebaseAttachmentsDetails>(); if (ModelState.IsValid) { knowledgebase.Subject = editKnowledgebaseViewModel.Subject; knowledgebase.Status = editKnowledgebaseViewModel.Status; knowledgebase.KnowledgebaseTypeId = editKnowledgebaseViewModel.KnowledgebaseTypeId; knowledgebase.CreateDate = DateTime.Now; knowledgebase.UserId = Convert.ToInt32(_sessionHandler.UserId); knowledgebase.CategoryId = editKnowledgebaseViewModel.CategoryId; knowledgebase.KnowledgebaseId = Convert.ToInt64(editKnowledgebaseViewModel.KnowledgebaseId); knowledgebaseDetails.Contents = editKnowledgebaseViewModel.Contents; knowledgebaseDetails.Keywords = editKnowledgebaseViewModel.Keywords; if (Request != null && (_knowledgebase.GetKnowledgebaseAttachmentsCount(editKnowledgebaseViewModel.KnowledgebaseId) > 0 && Request.Files["fileupload_1"].ContentLength != 0 && Request.Files["fileupload_2"].ContentLength != 0 && Request.Files["fileupload_3"].ContentLength != 0)) { ModelState.AddModelError("", "Delete Pervious uploaded Attachments for Uploading New Attachments"); editKnowledgebaseViewModel.ListofCategory = _category.GetAllActiveSelectListItemCategory(); editKnowledgebaseViewModel.ListofKnowledgebaseType = _knowledgebase.KnowledgebaseTypeList(); return(View(editKnowledgebaseViewModel)); } else { if ((_knowledgebase.GetKnowledgebaseAttachmentsCount(editKnowledgebaseViewModel.KnowledgebaseId) == 0)) { for (int i = 1; i <= 3; i++) { var filename = "fileupload_" + Convert.ToString(i); var file = Request?.Files[filename]; if (file != null && file.ContentLength > 0) { var knowledgebaseAttachments1 = new KnowledgebaseAttachments(); string extension = Path.GetExtension(file.FileName); var myUniqueFileName = String.Concat(Guid.NewGuid(), extension); knowledgebaseAttachments1.AttachmentsName = myUniqueFileName; knowledgebaseAttachments1.AttachmentsType = extension; using (var binaryReader = new BinaryReader(file.InputStream)) { byte[] fileSize = binaryReader.ReadBytes(file.ContentLength); knowledgebaseAttachmentsDetails.AttachmentBytes = fileSize; } knowledgebaselist.Add(knowledgebaseAttachments1); knowledgebaseAttachmentsDetailsList.Add(knowledgebaseAttachmentsDetails); } } _knowledgebase.UpdateKnowledgebase(knowledgebase, knowledgebaseDetails, knowledgebaselist, knowledgebaseAttachmentsDetailsList); TempData["KnowledgebaseMessage"] = "Your Article Updated Successfully"; return(RedirectToAction("Edit", "Knowledgebase")); } _knowledgebase.UpdateKnowledgebase(knowledgebase, knowledgebaseDetails, null, null); TempData["KnowledgebaseMessage"] = "Your Article Updated Successfully"; return(RedirectToAction("Edit", "Knowledgebase", new { id = editKnowledgebaseViewModel.KnowledgebaseId })); } } editKnowledgebaseViewModel.ListofCategory = _category.GetAllActiveSelectListItemCategory(); editKnowledgebaseViewModel.ListofKnowledgebaseType = _knowledgebase.KnowledgebaseTypeList(); editKnowledgebaseViewModel.ListofAttachments = _knowledgebase.GetKnowledgebaseAttachments(editKnowledgebaseViewModel.KnowledgebaseId); return(View(editKnowledgebaseViewModel)); } catch (Exception) { throw; } }