public bool AddVideo(NewsDataViewModels video, string videoPath) { bool RetVal = false; if (video == null) { return RetVal; } NewsData newsData = new NewsData { church = video.church, country = video.country, description = video.description, fName = video.fName, lName = video.lName, person = video.person, province = video.province, status = video.status, user_id = video.User_Id, Path = videoPath }; try { context.Entry(newsData).State = Microsoft.EntityFrameworkCore.EntityState.Added; context.SaveChanges(); RetVal = true; } catch (Exception ex) { int i = 9; } return RetVal; }
public NewsDataPagination_a_ViewModels GetNewsList_a(int user_id, NewsTypes type = NewsTypes.All, int page = 1, int pageSize = 4, string columnOrder = "", string sortByOrder = "asc") { sortByOrder = sortByOrder ?? "asc"; List<NewsDataViewModels> List = new List<NewsDataViewModels>(); List<string> colList = new List<string> { "description", "path", "lname" }; string colName = colList.Where(t => t == columnOrder?.Trim().ToLower()).FirstOrDefault(); List<NewsData> list = null; if (string.IsNullOrEmpty(columnOrder) || colName == null || string.IsNullOrEmpty(sortByOrder)) { list = context.NewsData.Where(p => p.user_id == user_id) .OrderBy(t => t.description).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList(); } else { if (colName == "description") { if (sortByOrder == "asc") { list = context.NewsData.Where(p => p.user_id == user_id) .OrderBy(t => t.description).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList(); } else { list = context.NewsData.Where(p => p.user_id == user_id) .OrderByDescending(t => t.description).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList(); } } else if (colName == "path") { if (sortByOrder == "asc") { list = context.NewsData.Where(p => p.user_id == user_id) .OrderBy(t => t.Path).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList(); } else { list = context.NewsData.Where(p => p.user_id == user_id) .OrderByDescending(t => t.Path).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList(); } } else if (colName == "lname") { if (sortByOrder == "asc") { list = context.NewsData.Where(p => p.user_id == user_id) .OrderBy(t => t.lName).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList(); } else { list = context.NewsData.Where(p => p.user_id == user_id) .OrderByDescending(t => t.lName).Skip((page - 1) * pageSize).Take<NewsData>(pageSize).ToList(); } } } if (list != null && list.Count > 0) { foreach (var item in list) { NewsDataViewModels newsData = new NewsDataViewModels { church = item.church, country = item.country, description = item.description, fName = item.fName, lName = item.lName, person = item.person, province = item.province, status = item.status, User_Id = item.user_id, Path = item.Path }; List.Add(newsData); } int TotalItems = context.NewsData.Where(t => t.user_id == user_id).Count(); Paging_a_Info paging_A_Info_ = PopulatePagingInfo(TotalItems, page, pageSize); //PagingInfo pagingInfo = new PagingInfo //{ // CurrentPage = page, // ItemsPerPage = PageSize, // TotalItems = context.NewsData.Where(t => t.user_id == user_id).Count() //}; return new NewsDataPagination_a_ViewModels { NewsDatasList = List, paging_A_Info = paging_A_Info_ , sortByColumn = columnOrder ,sortByOrder= sortByOrder }; } else { return new NewsDataPagination_a_ViewModels { NewsDatasList = new List<NewsDataViewModels>(), paging_A_Info = new Paging_a_Info { //CurrentPage = page, //ItemsPerPage = PageSize, //TotalItems = 0 } }; } }
public IActionResult UploadNews(ICollection <IFormFile> files, int User_Id, NewsDataViewModels newsData) { //long size = files.Sum(f => f.Length); string mainFolder = _environment.ContentRootPath; int n = 0; string msg = ""; bool success = false; foreach (var file in files) { string filePath = ""; string[] videos = new string[] { "mp4", "mp3" }; string[] images = new string[] { "jpg", "png" }; string fileName = file?.FileName?.Replace(" ", "_").Replace("-", "_"); if (file?.FileName != null) { int ii = fileName.LastIndexOf("\\"); if (ii != -1) { fileName = fileName.Substring(ii + 1); } } int i = file.FileName.LastIndexOf("."); if (i == -1) { continue; } string ext = file.FileName.Substring(i + 1); if (videos.Contains(ext)) { filePath = _environment.WebRootPath + @"/VideoFiles/Videos/" + fileName; } if (images.Contains(ext)) { filePath = _environment.WebRootPath + @"\VideoFiles\Images\" + fileName; } if (file.Length > 0) { using (var stream = new FileStream(filePath, FileMode.Create)) { try { file.CopyToAsync(stream); bool res = videoRepository.AddVideo(newsData, filePath); n += 1; } catch (Exception ex) { msg += " There was problem to save file : " + file?.FileName; } } } } if (n > 0) { msg += " Files saved successfully are: " + n.ToString(); success = true; return(Json(new { success = success, message = msg })); } else { newsData.message = "There was not selected file!"; //return Ok(new { count = files.Count, size, filePath }); return(View("NewsUpload", newsData)); } }