Как преобразовать двоичные данные в файл PDF ASP.NET MVC

Я разрабатываю информационную систему для студентов. Я вставляю файл PDF в базу данных в виде двоичного файла для каждого курса. Я хочу, чтобы пользователи загружали этот файл. Загрузка файла, но не отображение. Где я делаю неправильно.

MvcCode

  public FileResult FileDownload(Ders not)
    {
        byte[] byteArray = GetPdfFromDB(not.DersId);
        MemoryStream pdfStream = new MemoryStream();
        pdfStream.Write(byteArray, 0, byteArray.Length);
        pdfStream.Position = 0;
        //return new FileStreamResult(pdfStream, "application/pdf");
        return File(pdfStream, "application/pdf", "DersNot.pdf");

    }

     private byte[] GetPdfFromDB(int id)
    {
        #region
        byte[] bytes = { };
        using (SqlConnection con = new SqlConnection(@"Server=****;Database=***;UID=***;PWD=***"))
        {
            con.Open();
            using (SqlCommand cmd = new SqlCommand())
            {
                cmd.CommandText = "SELECT DersNotIcerik FROM Ders WHERE DersId=@Id";
                cmd.Parameters.AddWithValue("@Id", id);
                cmd.Connection = con;

                using (SqlDataReader sdr = cmd.ExecuteReader())
                {
                    if (sdr.HasRows == true)
                    {
                        sdr.Read();
                        bytes = (byte[])sdr["DersNotIcerik"];
                    }
                }
                con.Close();
            }
        }

        return bytes;
        #endregion
    }

Посмотреть

@Html.ActionLink(item2.DersNotAd, "FileDownload", new { id = item2.DersId })

1 ответ

Я решил проблему следующим образом. Мы можем закрыть тему

    public FileResult FileDownload(int id)
       {

        SqlConnection con = new SqlConnection(@"Server=10UR\MSSQLSERVERR;Database=UniversiteDB;UID=onur;PWD=1234");

        con.Open();
        SqlCommand cmd = con.CreateCommand();
        cmd.CommandText = "SELECT DersNotIcerik FROM Ders WHERE DersId=@Id";
        cmd.Parameters.AddWithValue("@Id", id);
        byte[] binaryData = (byte[])cmd.ExecuteScalar();
        return File(binaryData, "application/octet-stream", "DersNot.pdf");

    }
Другие вопросы по тегам