Классы из пространства имен System.Data Object DataRow MarshalByValueComponent DataSet DataTable DataView DataViewManager DataColumn Constraint ForeignKeyConstraint.

Презентация:



Advertisements
Похожие презентации
Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод. 22: Глоссарий © Бабич А,В,, 2004г 1 из 268 Модуль 22: Глоссарий терминов Курс SE201 Введение в программную.
Advertisements

Выполнили: Учащиеся 10-го «В» класса ГОУ СОШ 1150 Евтихов Евгений Уфимцев Егор Оглавление.
Тема: Моделирование физических явлений при помощи пакета Mathematica II. Типы данных 1.Основные классы данных 2.Выражения 3.Списки и массивы 4.Объекты.
Высокоуровневые методы информатики и программирования Лекция 20 Пространство имен System.Windows.Forms.
Введение в объектно- ориентированное программирование. Основные элементы языка С#. Понятие класса. Лекция 1.
Администрирование информационных систем Серверы имен. DNS,WINS.
ДонНУ, кафедра КТ, проф.В.К.Толстых Платформа.NET Widows-приложения в среде Delphi for.NET Из цикла лекций «Internet-технологии разработки приложений»
Программа развития муниципального образовательного учреждения « Аликовская средняя общеобразовательная школа имени И.Я. Яковлева Авторы презентации: зам.директора.
МОУ «СОШ 1» г. Светлогорска Конкурс «Янтарные звезды». Номинация - Земля и Вселенная ЗА ПОРОГОМ ЗЕМНОГО ДОМА… Выполнили учащиеся 8 «в» класса: Ивашененко.
Интернет в бизнесе. Лекция 3 © КНТЭУ, каф. ИТС, доц. Шклярский С.М. Адресация в Интернет 1. Уровни адресации в Сети. 2. Классы ip-адресов. 3. Система имен.
Java Advanced Введение в XML. 2 СПбГУ ИТМО Georgiy KorneevJava Advanced / Введение в XML Содержание 1.XML 2.Пространства имен 3.SAX 4.DOM 5.Заключение.
Коллекции Пространство имен System.Collections Наиболее простой вариант набора элементов это массив System. Array. Он уже обладает весьма полезными встроенными.
1 Платформа.NET Среда разработки Visual Studio.NET для нескольких языков программирования Каркас.NET Framework библиотека классов исполняющая система (виртуальная.
Михаил Афанасьевич Булгаков Слайд-фильм о жизни и творчестве писателя Материалы к урокам литературы в 11 классе.
Java Advanced Введение в XML. 2 СПбГУ ИТМО Georgiy KorneevJava Advanced / Введение в XML Содержание 1.XML 2.Пространства имен 3.SAX 4.DOM 5.Заключение.
Классы из пространства имен System.Data ObjectMarshalByValueComponentDataSetDataTableDataViewDataColumnDataRowDataRelationConstraintForeignKeyConstraintUniqueKeyConstraint.
Лекция 12 Пространство имен в XML документе Прежде чем рассмотреть подробно метод startElement, рассмотрим понятие пространства имен. Концептуально, пространство.
АДМИНИСТРИРОВАНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ СЕРВЕРЫ ИМЕН. DNS, WINS.
Выход из шаблонов. Свободное парение. Вы можете ощутить себя сейчас выстреливаю- щими из пушки. Для этого просто дайте себе разрешение, чтобы этот выстрел.
Зуевская средняя школа, 9 класс Содержание: Портреты математиков Из биографии математиков Тест Поэтические страницы Об авторе.
Транксрипт:

Классы из пространства имен System.Data Object DataRow MarshalByValueComponent DataSet DataTable DataView DataViewManager DataColumn Constraint ForeignKeyConstraint UniqueConstraint DataRelation В пространство имен System.Data входят классы, поддерживающие клиентскую часть архитектуры ADO.NET. Класс DataSet состоит из набора таблиц DataTable, которые могут содержать данные, полученные из разных источников. Классы DataView и DataViewManager используются для представлений таблицы, классы DataRow и DataColumn - для строк и столбцов таблицы. Классы DataRelation, Constraint, ForeignKeyConstraint и UniqueConstraint используются для описания связей между таблицами и ограничений для столбцов. В пространстве имен System.Data также определены делегаты для обработчиков событий, классы исключений и перечисления.

Класс DataTable Класс DataTable описывает таблицу данных и содержит коллекции строк (объектов DataRow ) и столбцов (DataColumn). Коллекция столбцов определяет схему (schema) таблицы. Строки таблицы состоят из полей, отвечающих схеме таблицы. Свойства Rows и Columns дают доступ к коллекции строк и столбцов таблицы: public DataRowCollection Rows {get;} public DataColumnCollection Columns {get;} В коллекциях определены индексаторы, причем доступ к элементам коллекций возможен как по номеру, так и по имени объекта. Открытые конструкторы класса DataTable После создания объекта DataTable с использованием открытых конструкторов класса он не имеет схемы. Чтобы определить схему таблицы DataTable, необходимо создать объекты DataColumn и добавить их к коллекции Columns таблицы. DataTable(); DataTable( string tableName );

Класс DataColumn DataColumn(); DataColumn( string columnName ); DataColumn( string columnName, Type dataType ); При создании столбцов DataColumn используется конструктор класса или одна из перегруженных версий метода Add класса DataColumnCollection. Некоторые конструкторы класса DataColumn В приведенном фрагменте кода создается таблица с именем Sample_DataTable, в которую добавляются столбцы. Для каждого столбца задается имя и тип данных в столбце. public Data_5() { tbl = new DataTable("Sample_DataTable"); tbl.Columns.Add("String_Column", typeof(string)); tbl.Columns.Add("Double_Column", typeof(double)); tbl.Columns.Add("Bool_Column", typeof(bool)); tbl.Columns.Add("DateTime_Column", typeof(DateTime)); tbl.Columns.Add("Point_Column", typeof(Point)); tbl.Columns.Add("Color_Column", typeof(Color)); tbl.Columns.Add("DataItem_3_Column", typeof(DataItem_3)); AddDefaults(); }

Класс DataRow DataRow NewRow(); В таблице DataTable данные хранятся в виде строк – объектов типа DataRow. Класс DataRow не имеет открытых конструкторов. Ссылку на новую строку в таблице можно получить как возвращаемое значение метода NewRow класса DataTable. Строка DataRow добавляется к коллекции строк таблицы Rows при вызове метода Add класса DataRowCollection. void Add( DataRow row ); virtual DataRow Add( object[] values ); Доступ к отдельным полям (столбцам) строки таблицы дают индексаторы, которые принимают как параметр номер или имя столбца. object this[ string columnName ] {get; set;} object this[ DataColumn column ] {get; set;} object this[ int columnIndex ] {get; set;}

Редактирование данных таблицы Класс DataTable поддерживает средства для восстановления (rollback) исходных значений, которые хранились в таблице до ее изменения (в том числе программного). Для каждой строки таблицы поддерживается четыре версии: Current – измененные значения; Original – значения до изменения; Proposed – существует только в процессе редактирования ; Default – одна из предыдущих версий (зависит от состояния строки). Только после вызова одного из следующих методов класса DataTable, изменения в таблице либо принимаются, либо восстанавливаются исходные значения. public void AcceptChanges(); public virtual void RejectChanges(); Можно получить значения полей для разных версий строки с помощью определенных в классе DataRow индексаторов, указав соответствующее значение перечисления DataRowVersion. Среди значений перечисления есть Current и Original. object this[ DataColumn column, DataRowVersion version ] {get;} object this[ string columnName, DataRowVersion version ] {get;} object this[ int columnIndex, DataRowVersion version ] {get;}

Класс DataView Класс DataView дает возможность создать несколько представлений (view) для одного и того же множества данных из объекта DataTable, используя различные критерии сортировки и/или фильтрации. Класс DataView всегда связан с объектом DataTable. С каждым объектом DataTable всегда связан объект DataView - представление по умолчанию. Ссылку на него можно получить через свойство класса DataTable: public DataView DefaultView {get;} Другие представления для таблицы можно создать с помощью конструкторов класса DataView. public DataView(); public DataView(DataTable);

Привязка к DataTable В примере представление по умолчанию DefaultView для объекта DataTable используется как источник данных для элемента управления ListBox и как контекст данных окна приложения: public partial class Window1 : Window { Data_5 data = new Data_5(); private void Window_Loaded(object sender, RoutedEventArgs e) { this.DataContext = data.Table.DefaultView; listBox1.ItemsSource = data.Table.DefaultView; listBox1.IsSynchronizedWithCurrentItem = true; } […code…] } В разметке выполнена привязка элементов текущей строки таблицы к элементам управления CheckBox и TextBox. Имя соответствующего столбца указывается в свойстве Path привязки. Для элементов TextBlock выполнена привязка к свойствам Date, Brush и DoubleValue типа DataItem_3, значения которого находятся в столбце с именем DataItem_3_Column. <CheckBox IsChecked="{Binding Path=Bool_Column}" Content="{Binding Path=Bool_Column}" Grid.Column="1" Margin="10,175,10,0" Height="25" VerticalAlignment="Top"/> <TextBlock Text="{Binding Path=DataItem_3_Column.Date}" Foreground="{Binding Path=DataItem_3_Column.Brush}" Margin="50,305,10,0" />