У кого-нибудь есть пример того, как сохранить загруженный документ (будь то Word или PDF, и т. Д. .) В БД SQL Server 2008 с использованием Entity Framework?
Я думаю, что яЯ разобрался с частью загрузки файла (см. код ниже), хотя я открыт для конструктивных комментариев.
Раньше я много занимался хранением документов в старых БД, и поскольку в SQL Server 2008 появились новые данныетипы, может кто-то предложить, что я должен использовать для моего загруженного документа (это все еще изображение)?
Кроме того, как вы можете видеть из моего кода, если у меня есть загруженный документ в виде байтового массива (или, пожалуйста,предложить иначе) как мне передать это своей сущности?
Вот что у меня так далеко:
[HttpPost]
public ActionResult Create(HttpPostedFileBase fileUpload)
{
if (fileUpload == null) return View();
if (fileUpload.ContentLength == 0) return View();
// not sure whether this is useful or the method below this
var reader = new StreamReader(fileUpload.InputStream);
foreach (string file in Request.Files)
{
var hpf = Request.Files[file] as HttpPostedFileBase;
if (hpf.ContentLength == 0) continue;
var savedFileName = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, Path.GetFileName(hpf.FileName));
hpf.SaveAs(savedFileName);
var curFile = System.IO.File.Open(file, FileMode.Open);
var fileLength = curFile.Length;
var tempFile = new byte[fileLength];
curFile.Read(tempFile, 0, Convert.ToInt32(fileLength));
var jobFile = new JobFile
{
UploadDate = DateTime.Now,
UploadedBy = User.Identity.Name,
FileName = savedFileName,
ContentType = hpf.ContentType
};
jobFile.FileData =
_jobFileRepository.Save();
}
return RedirectToAction("Index");
}
Любая помощь очень ценится.