public void Execute(DocumentTemplateFile file) { var repo = Uow.GetRepository <DocumentTemplateFile>(); repo.Update(file); Uow.SaveChanges(); }
private static void UploadDocumentTemplateFiles( Dictionary <string, string> templateEntities, string rootPath, string templatesRootPath, NiisWebContext context) { foreach (var template in templateEntities) { var type = context.DicDocumentTypes.FirstOrDefault(d => d.Code == template.Key); if (type != null) { using (var transaction = context.Database.BeginTransaction()) { context.Database.ExecuteSqlCommand("SET IDENTITY_INSERT [dbo].[DocumentTemplateFiles] ON"); var dbTemplate = context.DocumentTemplateFiles.SingleOrDefault(x => x.Id == type.Id); var path = Path.Combine($"{rootPath}/{templatesRootPath}", $"{template.Value}.{FileTypes.Docx}"); var fileBytes = File.ReadAllBytes(path); if (dbTemplate != null) { dbTemplate.DateUpdate = DateTimeOffset.Now; dbTemplate.File = fileBytes; dbTemplate.FileSize = fileBytes.Length; context.DocumentTemplateFiles.Update(dbTemplate); } else { dbTemplate = new DocumentTemplateFile { DateCreate = DateTimeOffset.Now, DateUpdate = DateTimeOffset.Now, File = fileBytes, FileSize = fileBytes.Length, FileName = $"{template.Value}.{FileTypes.Docx}", Id = type.Id }; context.DocumentTemplateFiles.Add(dbTemplate); } type.TemplateFileId = dbTemplate.Id; context.DicDocumentTypes.Update(type); context.SaveChanges(); context.Database.ExecuteSqlCommand("SET IDENTITY_INSERT [dbo].[DocumentTemplateFiles] OFF"); transaction.Commit(); } } } }