public static void Initialization() { mail = new MailF(); auth = new Authorization(); loaderFile = new LoaderFile(); uploader = new UploadApp(); upload = new UploadF(); }
public async Task <HttpResponseMessage> Upload() { UploadApp updApp = new UploadApp(); if (!Request.Content.IsMimeMultipartContent()) { return(Request.CreateResponse(HttpStatusCode.BadRequest, "Ошибка при загрузке файла")); } updApp.App = new Application(); updApp.GetProvider(); await Request.Content.ReadAsMultipartAsync(updApp.Provider); await updApp.ReadFileAsync(); List <Error> errors = await updApp.ValidateAsync(); //Валидация foreach (Error error in errors) { ModelState.AddModelError(error.Name, error.Text); } updApp.App.ApplicationUserId = IdentityExtensions.GetUserId(User.Identity); updApp.App.Date = DateTime.Now.ToString("dd MMMM yyyy | HH:mm:ss"); //updApp.App.Id = Guid.NewGuid().ToString(); ApplicationUserManager userManager = Request.GetOwinContext().GetUserManager <ApplicationUserManager>(); // если не админ то подтверждение нужно if (!userManager.IsInRole(IdentityExtensions.GetUserId(User.Identity), "Admin")) { updApp.App.Hide = true; } updApp.App.Delete = false; updApp.App.Path = updApp.Path; updApp.App.PathIcon = updApp.PathIcon; if (!ModelState.IsValid) //валидация { return(Request.CreateResponse(HttpStatusCode.BadRequest, ModelState)); } _db.Applications.Add(updApp.App); _db.SaveChanges(); return(Request.CreateResponse(HttpStatusCode.Created, updApp.App)); }