Загрузить файл ePub из приложения ASP.NET MVC - PullRequest
0 голосов
/ 02 ноября 2010

В настоящее время я загружаю файлы PDF и изображения из своего веб-приложения MVC в базу данных сервера SQL.Это работает отлично, однако теперь я хочу иметь возможность загружать файлы ePub.

Я пытался сделать это с тем же самым загрузчиком в некоторой тщетной надежде, что это будет работать, однако я получаю ошибку:

SqlException не был обработан кодом пользователя.

"Параметризованный запрос" (@FileContent varbinary (max), @ MimeType nvarchar (4000), @ FileName 'ожидает параметр' @MimeType)', который не был предоставлен.

Вот также код от моего контроллера, который обрабатывает загрузки:

public ActionResult Index()
{

    foreach (string upload in Request.Files)
    {
        if (!Request.Files[upload].HasFile1()) continue;

        string mimeType = Request.Files[upload].ContentType;
        Stream fileStream = Request.Files[upload].InputStream;
        string fileName = Path.GetFileName(Request.Files[upload].FileName);
        int fileLength = Request.Files[upload].ContentLength;
        byte[] fileData = new byte[fileLength];
        fileStream.Read(fileData, 0, fileLength);

        const string connect = @"Server=localhost;Database=Images;user id=taraw; password=****;";
        using (var conn = new SqlConnection(connect))
        {
            var qry = "INSERT INTO FileStore (FileContent, MimeType, FileName) VALUES (@FileContent, @MimeType, @FileName)";
            var cmd = new SqlCommand(qry, conn);
            cmd.Parameters.AddWithValue("@FileContent", fileData);
            cmd.Parameters.AddWithValue("@MimeType", mimeType);
            cmd.Parameters.AddWithValue("@FileName", fileName);
            conn.Open();
            cmd.ExecuteNonQuery();
        }
    }

    return View();
}

Я знаю, что ошибка довольно очевидна в отношении того, чтопроблема в том, что я просто не уверен, как изменить код, чтобы он мог принимать форматы файлов ePub.

Любая помощь будет принята с благодарностью:)

Ответы [ 2 ]

0 голосов
/ 02 ноября 2010

Обнаружено, что mimetype для файла epub - application / epub + zip.Указал это в моем приложении, а не ожидал от пользователя, и это, похоже, сработало.Файл загружается и скачивается без проблем.

Спасибо всем, кто прокомментировал:)

0 голосов
/ 02 ноября 2010

Добавьте ePUB в список Mime-типов вашего сервера как известный тип, я думаю, что mime-type обнуляется в db, поэтому эта ошибка возникает.

...