Связывание рабочего листа с базой данных с помощью конструктора рабочих листов в VS.Net 2005
Связывание рабочего листа с базой данных с помощью конструктора рабочих листов в VS.Net 2005
Цель этой статьи — дать возможность всем разработчикам узнать, как создать приложение для привязки данных вВС.Нет 2005 и понять использование и рольДизайнер рабочих листов редактор. Лучший способ узнать и понять что-либо — это использовать примеры. Итак, в этой статье нам также было бы лучше создать пример приложения для демонстрации использованияДизайнер рабочих листовв связывании листов с базой данных. Давайте создадим приложение шаг за шагом.
Шаг 1: Создание образца базы данных
Прежде всего, мы создадим образец базы данных, который будет использоваться в этой статье. Мы использовали MS Access для создания примера базы данных, содержащейПродукты таблица, схема которой показана ниже:
Фигура: Информация о конструкцииПродукты Таблица
Несколько фиктивных записей добавлены вПродукты таблицу, как показано ниже на рисунке:
Фигура: Записи вПродукты Таблица
Шаг 2: Разработка примера приложения
АнASP.NET Веб-приложение создан и спроектирован в Visual Studio.NET 2005, как показано на рисунках ниже. Эти снимки экрана полезны для тех разработчиков, которые мало знакомы с использованием Aspose.Cells.GridWeb в Visual Studio.Net 2005.
Первый запуск VS.Net 2005.
Фигура: Начиная с VS.Net 2005
Создайте новый веб-сайт из меню Файл|Новый|Веб-сайт….
Фигура: Создание нового веб-сайта
После выбора пункта меню Файл|Новый|Веб-сайт…Новый веб-сайт показан диалог. Нажмите наПросматривать кнопка в нем.
**Фигура:**Диалоговое окно «Новый веб-сайт»
После нажатия наПросматривать кнопку, выберите папку расположения в локальном IIS. Вы можете создать новую папку и сделать ее виртуальной папкой, как показано на рисунке.
Фигура: Создание новой папки
После нажатия наОткрытым кнопка вВыберите местоположение диалог,Новый веб-сайт диалог будет выглядеть так.
Фигура: Установка местоположения проекта
Теперь проект создан
Фигура: Созданный проект
Режимы XHTML и HTML
Aspose.Cells.GridWeb полностью поддерживает режим XHTML, который реализован по умолчанию в VS.Net 2005 с моментаXhtmlMode собственностьGridWeb управление установлено наИстинный по умолчанию при размещении элемента управления на веб-странице. Но если вы хотите реализовать режим HTML для элемента управления в VS.Net 2005, вы можете сделать это довольно легко. Вы должны изменить**<!ДОКТИП>** пометьте немного в исходном коде веб-страницы и установите**XhtmlMode** собственность**GridWeb** контроль над**ЛОЖЬ** .
В этой теме мы будем использовать режим HTML для управления. Итак, следуйте инструкциям ниже
1. Переключитесь на исходный вид веб-страницы и найдите следующий тег <!DOCTYPE> в исходном коде.
XML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Как только вы найдете этот тег, выберите этот полный тег в исходном коде, как показано ниже.
Фигура: ВыборТег <!DOCTYPE>
Заменить**<!ДОКТИП>** тег из вашего исходного кода со следующим.
XML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
Фигура: ИзменениеТег <!DOCTYPE>
2. После добавления элемента управления GridWeb в веб-форму. Вы должны выбрать элемент управления и выбрать свойство XhtmlMode в окне свойств, чтобы установить для него значение False.
Добавление GridWeb в веб-форму
Щелкните правой кнопкой мышиЯщик для инструментов и выберитеВыбрать товары… из меню.
Фигура: Выбор предметов
Теперь выберитеGridWeb компонент и нажмитеХОРОШО
Фигура: ВыборGridWeb компонент в диалоговом окне компонентов
СейчасGridWeb добавляется, как показано на рисунке ниже.
Фигура: GridWeb добавляется в набор инструментов
ПоместитеGridWeb в веб-форме, как показано ниже.
Фигура: РазмещениеGridWeb на веб-странице
Шаг 3: Подключение к базе данных с помощью обозревателя серверов и настройка объекта подключения
Сначала мы добавляем базу данных MS Access в проект, который мы ранее создали вШаг 1 . Вы можете видеть, чтоdb.mdb файл добавлен в проект.
Фигура: Добавлена база данных в папку проекта
Теперь мы идем кДизайнер компонентов окно веб-формы с помощью пункта контекстного меню веб-страницы.
Фигура: ВыборПросмотр конструктора компонентов вариант
Окно Component Designer показано ниже.
Фигура: Окно конструктора компонентов
Дважды щелкнитеОледбконнектион компонент из панели данных для размещения объекта oleDbConnection1 в окне.
Фигура: объект оледбконнектион1
Теперь пришло время подключиться к базе данных. Мы можем сделать это легко, используяОбозреватель серверов в Visual Studio.NET 2005. Просто выберитеПодключение для передачи данных вОбозреватель серверов и щелкните правой кнопкой мыши. Перед вами появится контекстное меню. Выбирать**Добавить соединение…**пункт меню, как показано ниже на рисунке:
Фигура: ВыборДобавить соединение… вариант из меню
После выбораДобавить соединение… вариант из меню,Добавить соединение диалоговое окно будет открыто иПросматривать чтобы выбрать файл базы данных, как показано ниже.
Фигура: Выбор файла базы данных
Вы можете проверить соединение.
Фигура: Тестирование соединения
Вы можете просмотреть соединение, чтобы проверить таблицу и ее поля.
Фигура: Проверка таблицы и ее полей соединения
Теперь, если вы выберетеоледбконнектион1 объект вДизайнер компонентов окно, вы можете выбрать строку подключения, относящуюся к существующему подключению, которое только что создано, оно находится в свойстве «ConnectionString» окнаоледбконнектион1 объект в окне свойств.
Фигура: Выбор строки подключения для объекта
Наконец, модификатор объекта изменяется наЗащищено для лучшей доступности.
Фигура: Установка модификатора объекта
Шаг 4: Настройка объекта адаптера данных
Теперь добавьтеОледбдатаадаптер компонент на панели данных в наборе инструментов, чтобы настроить его. Дважды щелкнитеОледбдатаадаптер на панели данных панели инструментов он запустит мастер настройки и выберет существующее соединение, как показано на рисунке:
Фигура: Мастер настройки адаптера данных
После нажатияСледующий кнопку, нажмите кнопкуКонструктор запросов добавитьПродукты таблицы, выберите «Все столбцы» и нажмитеХОРОШО кнопка.
Фигура: Добавление таблицы продуктов
Фигура: Конструктор запросов
Теперь нажмитеЗаканчивать кнопку, чтобы завершить работу мастера.
Фигура: Завершение мастера
После настройки мастера oleDbDataAdapter1 автоматически добавляется в окно, как показано ниже. Кроме того, вы можете установить его модификатор наЗащищено.
Фигура: Получение объекта OleDbDataAdapter в окне дизайнера
Шаг 5: Создание набора данных
Поскольку мы создали подключение к базе данных и объекты адаптера данных, нам все еще нужно что-то, где мы можем хранить данные после подключения к базе данных. Анабор данныхобъект может хранить данные точно, и мы также можем легко генерировать их с помощью VS.NET 2005 IDE. Для этого выберитеоледбдатаадапер1 и щелкните правой кнопкой мыши. Появится контекстное меню с некоторыми параметрами. ВыбиратьСоздать Набор данных… пункт меню, как показано ниже на рисунке.
Фигура: ВыборСоздать Набор данных… вариант из меню
После выбораСоздать Набор данных… вариант из меню,Создать набор данных диалог был бы открыт. Используя этот диалог, мы можем выбрать, каким будет имя новогонабор данных объект, который необходимо создать, и какие таблицы должны быть добавлены кнабор данных . ПроверятьДобавьте этот набор данных в дизайнер вариант и нажмитеХОРОШО кнопку, как показано ниже на рисунке.
Фигура: ЩелчокХОРОШО кнопка для созданиянабор данных
Теперь вы можете увидетьнабор данных11 объект добавлен в конструктор, как показано ниже на рисунке. Установите модификатор объекта наЗащищено.
Фигура: набор данных генерируется и добавляется в окно конструктора
Определенный код автоматически генерируется в соединении, связанном с файлом .cs, адаптере данных, объекте набора данных.
Фигура: Сгенерированный код
Шаг 6: Использование конструктора рабочих листов
Теперь пришло время открыть секрет. Выберите элемент управления и щелкните правой кнопкой мыши. Откроется контекстное меню. Выберите опцию Worksheets Designer… в меню, как показано ниже на рисунке.
Фигура: ВыборКонструктор рабочих листов… вариант из меню
После этогоРедактор коллекции рабочих листов диалог (также называемыйДизайнер рабочих листов ), вы можете увидеть несколько свойств, которые можно настроить для привязкиЛист1 с любой таблицей в базе данных. Давайте выберемИсточник данных имущество. Написатьнабор данных11 в нем (который мы сгенерировали и добавили в окно дизайнера на предыдущем шаге). Затем нажмите наDataMember имущество. НаписатьПродукты в качестве имени таблицы здесь, как показано ниже на рисунке:
Фигура: ПараметрИсточник данных иDataMember характеристики
Теперь вы можете настроитьБиндКолонкс имущество. После нажатия на нее теперь вы можете добавить столбцы привязки и установитьПодпись , Поле данных (Должно быть так же, какПродукты поля таблицы) и другие свойства. Вы можете установитьIsAutoCreated кистинный и применитьПроверка и установитеТип номераразличных полей для ваших требований.
Фигура: ЩелчокБиндКолонкс имущество
Фигура: Редактор коллекций BindColumn диалог
Шаг 7: Добавление нескольких строк кода для веб-страницы
мы использовалиДизайнер рабочих листов легко, и теперь нам просто нужно добавить несколько строк кода
Сначала мы добавимOnInit код, связанный с событием, для инициализацииИнициализироватьКомпонент метод для инициализации и создания объектов соединения, команды, адаптера данных и набора данных. Эти строки кода не добавляются с автоматически сгенерированным кодом, поэтому мы должны добавить их вручную.
Фигура: Добавление кода1
Фигура: Добавление кода2
Теперь добавим код вСтраница_Загрузка обработчик события заполнениянабор данных11 объект с данными из базы данных (используяоледбдатаадаптер1 ) и привязкаGridWeb контроль снабор данных11 позвонивпривязка данных метод.
Пример:
C#
//Implementing Page_Load event handler
protected void Page_Load(object sender, EventArgs e)
{
//Checking if there is not any PostBack
if (!IsPostBack)
{
try
{
//Filling DataSet with data
oleDbDataAdapter1.Fill(dataSet11);
//Binding GridWeb with DataSet
GridWeb1.DataBind();
}
finally
{
//Finally, closing database connection
oleDbConnection1.Close();
}
}
}
VB.NET
'Implementing Page_Load event handler
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
'Checking if there is not any PostBack
If Not IsPostBack Then
Try
'Filling DataSet with data
oleDbDataAdapter1.Fill(dataSet11)
'Binding GridWeb with DataSet
GridWeb1.DataBind()
Finally
'Finally, closing database connection
oleDbConnection1.Close()
End Try
End If
End Sub
Вы также можете проверить код, добавленный вСтраница_Загрузка обработчик события, как показано ниже на рисунке:
Фигура: Код добавлен вСтраница_Загрузка обработчик события
На сегодняшний день мы создали очень полезное приложение для работы с базой данных. Но это приложение позволяет только просматривать данные таблицы. Хотя вы можете редактировать данные вGridWeb управления, но когда вы закроете окно браузера и откроете свою базу данных. Вы обнаружите, что ничего не изменилось. Это означает, что внесенные вами изменения не сохраняются в базе данных. Итак, есть кое-что, что вы должны сделать.
Теперь мы добавим код в наше приложение, чтобыGridWeb может сохранить свои изменения в реальной базе данных. Давайте откроемХарактеристики панель и выберитеСохранитьКоманда событиеGridWeb управления из списка его событий. Если дважды щелкнуть поСохранитьКоманда событие, то VS.NET 2005 IDE создастGridWeb1_SaveCommand обработчик событий для вас. Добавьте некоторый код в этот обработчик событий для обновления базы данных с измененными данными, содержащимися внабор данных (связанный с рабочим листом) с использованиемоледбдатаадаптер1.
Пример:
C#
//Implementing the event handler for SaveCommand event
protected void GridWeb1_SaveCommand(object sender, EventArgs e)
{
try
{
//Getting the modified data of worksheet as a DataSet
DataSet dataset = (DataSet)GridWeb1.WebWorksheets[0].DataSource;
//Updating database according to modified DataSet
oleDbDataAdapter1.Update(dataset);
}
finally
{
//Closing database connection
oleDbConnection1.Close();
}
}
VB.NET
'Implementing the event handler for SaveCommand event
Protected Sub GridWeb1_SaveCommand(ByVal sender As Object, ByVal e As System.EventArgs)
Handles GridWeb1.SaveCommand
Try
'Getting the modified data of worksheet as a DataSet
Dim dataset As DataSet = CType(GridWeb1.WebWorksheets(0).DataSource, DataSet)
'Updating database according to modified DataSet
oleDbDataAdapter1.Update(dataset)
Finally
'Closing database connection
oleDbConnection1.Close()
End Try
End Sub
Вы также можете проверить код, добавленный вGridWeb1_SaveCommand обработчик события, как показано ниже на рисунке:
Фигура: Код добавлен вGridWeb1_SaveCommand обработчик события
Теперь, если вы сохраните свои изменения в базе данных, используяСохранять кнопкаGridWeb , они бы точно были спасены.
Шаг 8: Запуск вашего приложения
Наконец, мы можем скомпилировать и запустить наше приложение, нажавCtrl+F5 или нажавНачинать кнопка. В диалоговом окне отладки вы можете указать соответствующую опцию отладки и нажатьХОРОШО кнопку, как показано ниже на рисунке.
Фигура: Запуск приложения
После компиляцииDefault.aspx страница нашего веб-приложения откроется в новом окне браузера, где мы сможем увидеть все данные, загруженные из базы данных, как показано ниже:
Фигура: Данные загружены вGridWeb управление из базы данных
Когда данные загружаются вGridWeb управления, то вы почувствуете, что Aspose.Cells.GridWeb предоставляет своим пользователям неявный контроль над данными. Давайте проверим, какие функции манипулирования данными предлагаетGridWeb своим пользователям.
Валидация данных
Aspose.Cells.GridWeb автоматически создает соответствующие правила проверки для всех связанных столбцов в соответствии с их типами данных, определенными в базе данных. Вы можете увидеть тип проверки ячейки, наведя на нее указатель мыши, как показано ниже на рисунке:
**Фигура:**Проверка типа проверки ячейки
На приведенном выше рисунке мы видим, что выбранная ячейка содержит**<INT>** тип проверки, что означает, что пользователи могут вводить в него только целочисленное значение, в противном случае произойдет ошибка проверки. Более того,**<ОБЯЗАТЕЛЬНО>** показывает, что значение**Код товара** должен быть представлен пользователем.
Удаление строк
Чтобы удалить строку, вы должны сначала выбрать строку (или любую ячейку строки) и выбратьУдалить строку вариант из контекстного меню, как показано ниже:
Фигура: ВыборУдалить строку вариант из меню
После выбораУдалить строку из меню строка удаляется изGridWeb . Теперь нажмитеспасти кнопкаGridWeb чтобы удалить эту запись в исходной таблице базы данных.
Фигура: Данные сетки (после удаления строки)
Редактирование строк
Вы также можете редактировать данные в ячейках или строках, а затем нажатьСохранять кнопку, чтобы сохранить изменения.
Фигура: Данные сетки (Редактирование записи 1)
Фигура: Данные сетки (Редактирование записи 2)
Добавление строк
Чтобы добавить строку, выберитеДобавить ряд вариант из контекстного меню, как показано ниже:
Фигура: ВыборДобавить ряд вариант из меню
Новая строка будет добавлена на лист в конце строк после выбораДобавить ряд вариант из меню. Слева от недавно добавленной строки вы заметите значокзвездочка метка, указывающая, что строка добавлена недавно.
Фигура: В сетку добавлена новая строка
После ввода значений в новую строку нажмитеСохранять кнопка для подтверждения изменений в исходной таблице базы данных, как показано ниже
Фигура: Сохранение изменений в таблице базы данных по кликуСохранять кнопка