示例#1
0
        public async Task <ActionResult> DetailsOfExpo(int _idExpo)
        {
            {
                Expos expo = null;
                switch (Properties.Settings.Default.GetDataFrom)
                {
                case "db":
                    expo = await expoService.GetExpoAsync(_idExpo);

                    break;

                case "Json":
                    expo = await expoService.GetExpoFromJsonAsync(_idExpo);

                    break;
                }
                return(View(new ExposViewModel {
                    Id = expo.expoId,
                    DateStart = expo.startDate,
                    DateEnd = expo.endDate,
                    ExpoName = expo.expoName,
                    Description = expo.description,
                    Stands = expo.Stand,
                    Visit = expo.Visit,
                    PlanVisits = expo.PlanVisit,
                    ExpoFiles = expo.ExpoFiles,
                    ExpoPhotos = expo.ExpoPhotos
                }
                            ));
            }
        }
示例#2
0
        public async Task <ActionResult> AddNewExpo(ExposViewModel _exposViewModel, string redirectUrl, HttpPostedFileBase uploadImage)
        {
            if (!ModelState.IsValid)
            {
                return(View(_exposViewModel));
            }
            var expo = new Expos
            {
                expoName    = _exposViewModel.ExpoName,
                startDate   = _exposViewModel.DateStart,
                endDate     = _exposViewModel.DateEnd,
                description = _exposViewModel.Description,
            };
            FileRepository fileRepository = new FileRepository();

            byte[] bytes;
            if (_exposViewModel.logoFile != null)
            {
                using (Stream inputStream = _exposViewModel.logoFile.InputStream)
                {
                    MemoryStream memoryStream = inputStream as MemoryStream;
                    if (memoryStream == null)
                    {
                        memoryStream = new MemoryStream();
                        inputStream.CopyTo(memoryStream);
                    }
                    bytes = memoryStream.ToArray();
                }
                //Byte[] bytes = _exposViewModel.logoFile.//System.IO.File.ReadAllBytes(expos.logoFile);
                String            fileBase64 = Convert.ToBase64String(bytes);
                FileFromJson.File file       = new FileFromJson.File()
                {
                    authorId = Convert.ToInt16(Session["UserId"]),
                    content  = fileBase64,
                    filename = _exposViewModel.logoFile.FileName,
                    fileType = "logo",
                    dateTime = DateTimeOffset.Now
                };
                file = await fileRepository.AddFileFromJsonAsync(file);

                expo.logoFileId = file.fileId;
            }
            switch (Properties.Settings.Default.GetDataFrom)
            {
            case "db":

                await expoService.AddExpoAsync(expo);

                break;

            case "Json":
                await expoService.AddExpoFromJsonAsync(expo);

                break;
            }
            return(RedirectToLocal(redirectUrl));
        }
示例#3
0
        public async Task <Expos> AddExpoFromJsonAsync(Expos _expos)
        {
            Expos  result = null;
            string json   = JsonConvert.SerializeObject(_expos, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Include, DefaultValueHandling = DefaultValueHandling.Ignore
            });
            string res = await HttpClient.Browser.ByMethodAsync(string.Format("{0}{1}", Properties.Settings.Default.BaseUrlApi, Properties.Settings.Default.postfixGetExpo), json, "POST");

            return(result);
        }
示例#4
0
        public async Task <Expos> UpdateExpoAsync(Expos _expos)
        {
            using (var expoContext = new ExposContext())
            {
                expoContext.Entry(_expos).State = EntityState.Modified;

                await expoContext.SaveChangesAsync();
            }

            return(_expos);
        }
示例#5
0
        public async Task <Expos> GetExpoAsync(Int32 _Id)
        {
            Expos result = null;

            using (var expoContext = new ExposContext())
            {
                result = await expoContext.Expos.FirstOrDefaultAsync(f => f.expoId == _Id);
            }

            return(result);
        }
示例#6
0
        public async Task <Expos> GetExpoFromJsonAsync(int _id)
        {
            Expos  expos = null;
            string json  = await HttpClient.Browser.GetAsync(string.Format("{0}{1}({2})", Properties.Settings.Default.BaseUrlApi, Properties.Settings.Default.postfixGetExpo, _id));

            ExpoFromJson.RootObject rootObject = await Task.Factory.StartNew(() => JsonConvert.DeserializeObject <ExpoFromJson.RootObject>(json, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore
            }));

            expos = rootObject.Expo;
            return(expos);
        }
示例#7
0
        public async Task <Expos> AddExpoAsync(Expos _expos)
        {
            Expos result = null;

            using (var expoContext = new ExposContext())
            {
                result = expoContext.Expos.Add(_expos);
                await expoContext.SaveChangesAsync();
            }

            return(result);
        }
示例#8
0
        public async Task <GRADEXPO.Models.Expos> UpdateExpoFromJsonAsync(GRADEXPO.Models.Expos _expos)
        {
            GRADEXPO.Models.Expos expos = new Expos()
            {
                expoName    = _expos.expoName,
                startDate   = _expos.startDate,
                description = _expos.description,
                endDate     = _expos.endDate,
                logoFileId  = _expos.logoFileId
            };
            string json = JsonConvert.SerializeObject(expos, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Include, DefaultValueHandling = DefaultValueHandling.Ignore
            });
            string res = await HttpClient.Browser.ByMethodAsync(string.Format("{0}{1}({2})", Properties.Settings.Default.BaseUrlApi, Properties.Settings.Default.postfixGetExpo, _expos.expoId), json, "PUT");

            return(_expos);
        }
示例#9
0
 public async Task <Expos> AddExpoFromJsonAsync(Expos _expo)
 {
     return(await exposRepository.AddExpoFromJsonAsync(_expo));
 }
示例#10
0
 public async Task <Expos> UpdateExpoAsync(Expos _expos)
 {
     return(await exposRepository.UpdateExpoAsync(_expos));
 }