public ActionResult Create(MeetingViewModel meetingModel)
 {
     if (ModelState.IsValid)
     {
         var meetingDto = mapToMeetingDto(meetingModel);
         HttpClientHelper.Post(apiUri, endpoint, meetingDto);
         return RedirectToAction("Index");
     }
     return View(meetingModel);
 }
 private MeetingDto mapToMeetingDto(MeetingViewModel meetingModel)
 {
     string datetime = ConvertDigitsToLatin(meetingModel.StartDate) + "/" + meetingModel.StartTime + "/0";
     var meetingDto = new MeetingDto
     {
         Id = meetingModel.Id,
         Agenda = meetingModel.Agenda,
         LocationAddress = meetingModel.Address,
         Attendees = meetingModel.AttendeesList,
         Description = meetingModel.Description,
         Duration = meetingModel.Duration,
         LocationLatitude = meetingModel.Latitude,
         LocationLongitude = meetingModel.Longitude,
         Subject = meetingModel.Subject,
         MeetingType = meetingModel.MeetingType,
         StartDate = GetChristianDateTime(datetime),
         Details = meetingModel.Details,
         Decisions = meetingModel.Decisions,
         State = (MeetingStateEnum)meetingModel.State,
         Reminder = new ReminderDto
         {
             ReminderType = (ReminderType)meetingModel.ReminderType,
             RepeatingType = (RepeatingType)meetingModel.RepeatingType,
             ReminderTimeType = (ReminderTimeType)meetingModel.ReminderTime
         }
     };
     return meetingDto;
 }
 private MeetingViewModel mapToViewModel(MeetingDto dto)
 {
     var meetingModel = new MeetingViewModel
     {
         Id = dto.Id,
         Address = dto.LocationAddress,
         Agenda = dto.Agenda,
         AttendeesList = dto.Attendees,
         Latitude = dto.LocationLatitude,
         Longitude = dto.LocationLongitude,
         Description = dto.Description,
         Duration = dto.Duration,
         MeetingType = dto.MeetingType,
         StartTime = dto.StartDate.ToString("HH:mm"),
         StartDate = GetPersianDate(dto.StartDate),
         StartDateTime = dto.StartDate,
         Subject = dto.Subject,
         Details = dto.Details,
         Decisions = dto.Decisions,
         ReminderTime = dto.Reminder != null ? (int)dto.Reminder.ReminderTimeType : 0,
         ReminderType = dto.Reminder != null ? (int)dto.Reminder.ReminderType : 0,
         RepeatingType = dto.Reminder != null ? (int)dto.Reminder.RepeatingType : 0,
         State = dto.State
     };
     return meetingModel;
 }
        public ActionResult Modify(MeetingViewModel meetingModel)
        {


            if (ModelState.IsValid)
            {
                List<FileDto> FileList = new List<FileDto>();
                if (Session["FileList"] != null)
                {
                    FileList = Session["FileList"] as List<FileDto>;
                }
                if (Session["OldFiles"] != null)
                {
                    var OldFiles = Session["OldFiles"] as List<FileViewModel>;
                    foreach (var item in OldFiles)
                    {
                        string strdocPath = Server.MapPath("/Download/" + item.FileName);
                        FileStream objfilestream = new FileStream(strdocPath, FileMode.Open, FileAccess.Read);
                        int len = (int)objfilestream.Length;
                        Byte[] documentcontents = new Byte[len];
                        objfilestream.Read(documentcontents, 0, len);
                        objfilestream.Close();
                        var str = Convert.ToBase64String(documentcontents);
                        FileDto OldFile = new FileDto()
                        {
                            ContentType = System.IO.Path.GetExtension(item.FileName),
                            Content = str
                        };
                        FileList.Add(OldFile);
                    }
                }
                //foreach (var item in files)
                //{
                //    if (item !=null)
                //    {
                //        MemoryStream target = new MemoryStream();
                //        item.InputStream.CopyTo(target);
                //        byte[] data = target.ToArray();
                //        var str = Convert.ToBase64String(data);
                //        FileDto File = new FileDto()
                //        {
                //            ContentType = System.IO.Path.GetExtension(item.FileName),
                //            Content = str
                //        };
                //        FileList.Add(File);
                //    }
                //}
                var meetingDto = mapToMeetingDto(meetingModel);
                meetingDto.Files = FileList;
                HttpClientHelper.Put(apiUri, endpoint, meetingDto);
                Session.Remove("FileList");
                Session.Remove("OldFiles");

                return RedirectToAction("Index");
            }
            return View(meetingModel);
        }