public async Task <models.ExpoFilesFromJson.ExpoFiles> AddExpoFilesFromJsonAsync(models.ExpoFilesFromJson.ExpoFiles _expoFilesFromJson, string _type = "fileExpo") { ExpoFilesFromJson.ExpoFiles expoFiles = null; switch (Properties.Settings.Default.GetDataFrom) { case "Json": string json = JsonConvert.SerializeObject(_expoFilesFromJson, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Include, DefaultValueHandling = DefaultValueHandling.Ignore }); string res = ""; switch (_type) { case "fileExpo": res = await HttpClient.Browser.ByMethodAsync(string.Format("{0}{1}({2})/{3}", Properties.Settings.Default.BaseUrlApi, Properties.Settings.Default.postfixGetExpo, _expoFilesFromJson.expoId, Properties.Settings.Default.postfixGetFileExpo), json, "POST"); break; case "photoExpo": res = await HttpClient.Browser.ByMethodAsync(string.Format("{0}{1}({2})/{3}", Properties.Settings.Default.BaseUrlApi, Properties.Settings.Default.postfixGetExpo, _expoFilesFromJson.expoId, Properties.Settings.Default.postfixGetPhoto), json, "POST"); break; } expoFiles = await Task.Factory.StartNew(() => JsonConvert.DeserializeObject <ExpoFilesFromJson.ExpoFiles>(res)); break; default: throw new System.Exception(string.Format("Приложение не умеет работать с типом данных {0}. Если вам нужно работать с такими типом данным, обратитесь к разработчику", Properties.Settings.Default.GetDataFrom)); } return(expoFiles); }
public async Task <ActionResult> addFile(ExposFilesViewModel exposFilesViewModel) { if (!ModelState.IsValid) { return(View(exposFilesViewModel)); } var expoFile = new ExpoFilesFromJson.ExpoFiles() { expoId = exposFilesViewModel.expoId }; FileRepository fileRepository = new FileRepository(); byte[] bytes; if (exposFilesViewModel.file != null) { using (Stream inputStream = exposFilesViewModel.file.InputStream) { MemoryStream memoryStream = inputStream as MemoryStream; if (memoryStream == null) { memoryStream = new MemoryStream(); inputStream.CopyTo(memoryStream); } bytes = memoryStream.ToArray(); } String fileBase64 = Convert.ToBase64String(bytes); FileFromJson.File file = new FileFromJson.File() { authorId = Convert.ToInt16(Session["UserId"]), content = fileBase64, filename = exposFilesViewModel.file.FileName, fileType = "file", dateTime = DateTimeOffset.Now }; file = await fileRepository.AddFileFromJsonAsync(file); expoFile.fileId = file.fileId; } await expoFilesService.AddExpoFilesFromJsonAsync(expoFile, "expoFile"); return(RedirectToLocal(exposFilesViewModel.RedirectUrl)); }
public async Task <ActionResult> addFile(ImageViewModel imageViewModel) { FileRepository fileRepository = new FileRepository(); byte[] bytes; if (imageViewModel.photoFile != null) { using (Stream inputStream = imageViewModel.photoFile.InputStream) { MemoryStream memoryStream = inputStream as MemoryStream; if (memoryStream == null) { memoryStream = new MemoryStream(); inputStream.CopyTo(memoryStream); } bytes = memoryStream.ToArray(); } String fileBase64 = Convert.ToBase64String(bytes); FileFromJson.File file = new FileFromJson.File() { authorId = Convert.ToInt16(Session["UserId"]), content = fileBase64, filename = imageViewModel.photoFile.FileName, fileType = "img", dateTime = DateTimeOffset.Now }; file = await fileRepository.AddFileFromJsonAsync(file); ExpoFilesFromJson.ExpoFiles expoFiles = new ExpoFilesFromJson.ExpoFiles() { fileId = file.fileId, expoId = imageViewModel.expoId }; ExpoFilesRepository filesRepository = new ExpoFilesRepository(); await filesRepository.AddExpoFilesFromJsonAsync(expoFiles, "photoExpo"); } return(RedirectToLocal(imageViewModel.RedirectUrl)); }
public async Task <ExpoFilesFromJson.ExpoFiles> GetExpoFileJsonAsync(int _expoId, int _fileId) { ExpoFilesFromJson.ExpoFiles expoFiles = null; switch (Properties.Settings.Default.GetDataFrom) { case "Json": string json = await GRADEXPO.HttpClient.Browser.GetAsync(string.Format("{0}{1}(fileId = {2}, expoId = {3})", Properties.Settings.Default.BaseUrlApi, Properties.Settings.Default.postfixGetProject, _fileId, _expoId)); ExpoFilesFromJson.ExpoFiles expoFilesResult = await Task.Factory.StartNew(() => JsonConvert.DeserializeObject <ExpoFilesFromJson.ExpoFiles>(json)); expoFiles = expoFilesResult; break; default: throw new System.Exception(string.Format("Приложение не умеет работать с типом данных {0}. Если вам нужно работать с такими типом данным, обратитесь к разработчику", Properties.Settings.Default.GetDataFrom)); } return(expoFiles); }
public async Task <ExpoFilesFromJson.ExpoFiles> AddExpoFilesFromJsonAsync(ExpoFilesFromJson.ExpoFiles _expoFilesFromJson, string _type = "fileExpo") { return(await expoFilesRepository.AddExpoFilesFromJsonAsync(_expoFilesFromJson, _type)); }