ПРАКТИЧЕСКОЕ руководство: Чтение и запись данных BLOB с помощью ADO.NET с помощью ASP.NET

ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.

Эта статья на английском языке:326502
В данной статье относится к следующим Microsoft.Библиотека классов NET Framework пространства имен:
  • System.Data.SqlClient
  • System.IO

В ЭТОЙ ЗАДАЧЕ

Аннотация
В данной статье описывается использование FileStream объект и массив байтов в ASP.NET, чтобы записать данные больших двоичных объектов (BLOB) в Microsoft SQL Server. В этой статье также описывается, как загрузить данные большого двоичного ОБЪЕКТА из базы данных SQL Server и скопировать эти данные для загружаемого файла на странице .aspx.

back to the top

Требования

В следующем списке представлены рекомендуемого оборудования, программного обеспечения, сетевой инфраструктуры и пакетов обновления, которые необходимы:
  • Microsoft Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server или Windows NT 4.0 Server
  • Microsoft Visual Studio.NET
  • Microsoft SQL Server
back to the top

Создание проекта

Этот пример проекта подключается к SQL Server Pubs База данных. Этот проект использует существующий Pub_info таблицы и сохраняет файл .jpg в поле логотип этой таблицы. Тип данных поля логотипа Изображение.
  1. Чтобы создать новую страницу ASP.Проект NET веб-приложения в Visual Basic.NET, выполните следующие действия:
    1. Запустите Visual Studio.NET.
    2. На Файл Выберите пункт Новый, а затем нажмите кнопку Проект.
    3. В Новый проект диалоговое окно, нажмите кнопку Проекты Visual Basic Из списка Типы проектов, а затем нажмите кнопку ASP.NET веб-приложения Из списка Шаблоны.
  2. Перетащите два Кнопка элементы управления из раздела веб-формы области элементов на веб-форму по умолчанию.
  3. В окне свойств измените Текст свойства элемента Button1 Кому Сохраните файл базы данных, а затем измените Текст свойства элемента Button2 Кому Загрузка файлов из базы данных.
  4. Добавьте следующий код в верхнюю часть окна кода:
          Imports System.Data.SqlClient      Imports System.IO					
  5. Дважды щелкните значок Button1, а затем добавьте следующий код для Button1_Click обработчик событий:
            Dim con As New SqlConnection("Server=yileiw2;uid=sqlauth;pwd=sqlauth;database=pubs")        Dim da As New SqlDataAdapter("Select * From pub_info", con)        Dim MyCB As SqlCommandBuilder = New SqlCommandBuilder(da)        Dim ds As New DataSet()        da.MissingSchemaAction = MissingSchemaAction.AddWithKey        con.Open()        da.Fill(ds, "Pub_info")        Dim fs As New FileStream _         ("C:\SomePath\MyPhoto.jpg", FileMode.OpenOrCreate, _          FileAccess.Read)        Dim MyData(fs.Length) As Byte        fs.Read(MyData, 0, fs.Length)        fs.Close()        ds.Tables("Pub_info").Rows(0)("logo") = MyData        da.Update(ds, "Pub_info")        fs = Nothing        MyCB = Nothing        ds = Nothing        da = Nothing        con.Close()        con = Nothing        Response.Write("File saved to database")					
  6. Дважды щелкните значок Button2, а затем добавьте следующий код для Button2_Click обработчик событий:
            Dim con As New SqlConnection("Server=yileiw2;uid=sqlauth;pwd=sqlauth;database=pubs")        Dim da As New SqlDataAdapter("Select * From pub_info", con)        Dim MyCB As SqlCommandBuilder = New SqlCommandBuilder(da)        Dim ds As New DataSet()        con.Open()        da.Fill(ds, "Pub_info")        Dim myRow As DataRow        myRow = ds.Tables("Pub_info").Rows(0)        Dim MyData() As Byte        MyData = myRow("logo")                Response.Buffer = True        Response.ContentType = "Image/JPEG"        Response.BinaryWrite(MyData)        MyCB = Nothing        ds = Nothing        da = Nothing        con.Close()        con = Nothing					
  7. Нажмите клавишу F5 чтобы скомпилировать и запустить приложение.
  8. Нажмите кнопку Сохраните файл базы данных Чтобы сохранить MyPhoto.jpg в SQL Server Изображение поле. После получения подтверждения сохраненный образ, проверьте таблицу для проверки.
  9. Нажмите кнопку Загрузка файлов из базы данных Загрузка данных с сервера SQL Server Изображение поле для веб-обозревателя.
back to the top

Дополнительные сведения

Несмотря на то, что в этом примере используется файл .jpg, все типы файлов можно загрузить с веб-приложения в обозреватель клиента. Например чтобы использовать документ Microsoft Word, а не файл .jpg, подставьте в следующий код
Response.ContentType = "Image/JPEG"				
с этим кодом:
Response.AddHeader("Content-Disposition", "attachment;filename=blob.doc")Response.ContentType = "application/msword"				
Список других типов содержимого и код, связанный с каждым типом содержимого по адресу AspTutorial.info веб-узла:
Страницы ASP - ContentType
http://www.asptutorial.Info/sscript/ContentType.ASP
back to the top
Ссылки
Для получения дополнительных сведений о том, как для чтения и записи данных BLOB с помощью ADO.NET и Visual Basic.NET, щелкните следующие номера статей базы знаний Майкрософт:
308042 ПРАКТИЧЕСКОЕ руководство: Чтение и запись данных BLOB с помощью ADO.NET с помощью Visual Basic.NET
316887 ПРАКТИЧЕСКОЕ руководство: Чтение и запись файла столбца BLOB с помощью ADO.NET и Visual Basic.NET
317034 ПРАКТИЧЕСКОЕ руководство: Чтение и запись файла столбца BLOB с помощью фрагментации в ADO.NET и Visual Basic.NET
back to the top

Внимание! Эта статья переведена автоматически

Свойства

Номер статьи: 326502 — последний просмотр: 06/15/2011 18:27:00 — редакция: 12.0

Microsoft ADO.NET 1.1, Microsoft ASP.NET 1.1, Microsoft ASP.NET 1.0

  • kbhowtomaster kbsqlclient kbsystemdata kbmt KB326502 KbMtru
Отзывы и предложения