Эндрю Троелсен - ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Тут можно читать онлайн Эндрю Троелсен - ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Издательский дом Вильямс, год 2007. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом Вильямс
  • Год:
    2007
  • Город:
    Москва • Санкт-Петербург • Киев
  • ISBN:
    ISBN 5-8459-1124-9
  • Рейтинг:
    3.2/5. Голосов: 101
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Эндрю Троелсен - ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание краткое содержание

ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание - описание и краткое содержание, автор Эндрю Троелсен, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

В этой книге содержится описание базовых принципов функционирования платформы .NET, системы типов .NET и различных инструментальных средств разработки, используемых при создании приложений .NET. Представлены базовые возможности языка программирования C# 2005, включая новые синтаксические конструкции, появившиеся с выходом .NET 2.0, а также синтаксис и семантика языка CIL. В книге рассматривается формат сборок .NET, библиотеки базовых классов .NET. файловый ввод-вывод, возможности удаленного доступа, конструкция приложений Windows Forms, доступ к базам данных с помощью ADO.NET, создание Web-приложений ASP.NET и Web-служб XML. Книга содержит множество примеров программного кода, призванного помочь читателю в освоении предлагаемого материала. Программный код примеров можно загрузить с Web-сайта издательства.

ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание - читать онлайн бесплатно полную версию (весь текст целиком)

ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание - читать книгу онлайн бесплатно, автор Эндрю Троелсен
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Таблица 22.12.Основные члены типа DataRow

Члены Описание
HasErrors GetColumnsInError() GetColumnError() ClearErrors() RowError Свойство HasErrors возвращает булево значение, являющееся индикатором наличия ошибок. В этом случае можно использовать метод GetColumnslnError(), чтобы получить информацию о членах, порождающих проблемы, метод GetColumnError(), чтобы получить описание ошибки, и метод ClearErrors(), удаляющий ошибки для данной строки. Свойство RowError позволяет задать текстовое описание ошибки для данной строки
ItemArray Свойство, возвращающее или устанавливающее значения для данной строки с помощью массива объектов
RowState Свойство, используемое для выяснения текущего "состояния" DataRow с помощью значений из перечня RowState
Table Свойство, используемое для получения ссылки на DataTable, содержащий данный объект DataRow
AcceptChanges() RejectChanges() Эти методы, соответственно, фиксируют или отвергают все изменения, сделанные в данной строке с момента последнего вызова AcceptChanges()
BeginEdit() EndEdit() CancelEdit() Эти методы, соответственно, начинают, завершают или отменяют операции редактирования для объекта DataRow
Delete() Метод, помечающий данную строку для удаления при вызове метода AcceptChanges()
IsNull() Метод, возвращающий значение-индикатор того, что данный столбец содержит значение null

Работа с DataRow немного отличается от работы с DataColumn, поскольку вы не можете создать напрямую экземпляр этого типа, а получаете ссылку от данного DataTable. Предположим, например, что нам нужно вставить две строки в таблицу Inventory. Метод DataTable.NewRow() позволяет добавить очередную строку в таблицу, а затем вы можете добавить в каждый столбец новые данные с помощью индексатора типа, как показано ниже.

static void Main(string[] args) {

// Добавление строк в таблицу Inventory.

DataRow carRow = inventoryTable.NewRow();

carRow["Make"] = "BMW";

carRow["Colar"] = "черный";

сarRow["PetName"] = "Hamlet";

inventoryTable.Rows.Add(carRow);

carRow = inventoryTable.NewRow();

carRow["Make"] = "Saab";

carRow["Color"] = "красный";

carRow["PetName"] = "Sea Breeze";

inventoryTable.Rows.Add(carRow);

}

Обратите внимание на то, что класс DataRow определяет индексатор, который может использоваться для получения доступа к данному объекту DataColumn как по числовому индексу позиции, так и по имени столбца. В результате выполнения указанных строк программного кода вы получите один объект DataTable, содержащий два столбца.

Свойство DataRow.RowState

Свойство RowState оказывается полезным тогда, когда необходимо программно идентифицировать набор всех строк в таблице, которая, например, была изменена, только что создана и т.д. Это свойство может принимать любое значение из перечня DataRowState. Описания этих значений предлагаются в табл. 22.13.

Таблица 22.13.Значения перечня DataRowState

Значение Описание
Added Строка была добавлена в DataRowCollection, но метод AcceptChanges() не вызывался
Deleted Строка была удалена с помощью метода Delete() объекта DataRow
Detached Строка была создана, но не является частью коллекции DataRowСollection. Объект DataRow находится в этом состоянии после своего создания до того, как будет добавлен к коллекции (или же после удаления этого объекта из коллекции)
Modified Строка была изменена, но метод AcceptChanges() не вызывался
Unchanged Строка не изменилась со времени последнего вызова AcceptChanges()

Во время программных манипуляций строками объекта DataTable свойство RowState устанавливается автоматически.

static void Маin(string[] args) {

DataRow carRow = InventoryTable.NewRow();

// Выводит 'Состояние строки: Detached.'

Console.WriteLine("Сoстояние строки: {0}.", carRow.RowState);

carRow["Make"] = "BMW";

carRow["Color"] = "черный";

carRow["PetName"] = "Hamlet";

inveritoryTable.Rows.Add(carRow);

// Выводит 'Состояние строки: Added.'

Console.WriteLine("Состояние строки: {0}.",

inventoryTable.Rows[0].RowState);

}

Как видите, DataRow в ADO.NET является достаточно "сообразительным" для того, чтобы контролировать текущее положение вещей. Поэтому, имея DataTable, вы можете выяснить, какие строки были изменены. Эта особенность DataSet очень важна, поскольку именно она при отправке обновленной информации в хранилище данных позволяет отправлять только измененные данные.

Работа с DataTable

Тип DataTable определяет большое количество членов, многие из которых по именам и возможностям идентичны членам DataSet. В табл. 22.14 предлагаются описания основных свойств типа DataTable, за исключением Rows и Columns.

Таблица 22.14. Основные свойства типа DataTable

Свойство Описание
CaseSensitive Индикатор необходимости учета регистра символов при сравнении строк в пределах таблицы. Значением по умолчанию является false (ложь)
ChildRelations Возвращает коллекцию дочерних отношений для данного объекта DataTable (если таковые имеются)
Constraints Возвращает коллекцию ограничений, поддерживаемых таблицей
DataSet Возвращает объект DataSet, содержащий данную таблицу (если таковой имеется)
DefaultView Возвращает пользовательское представление таблицы, которое может включать фильтр или позицию курсора
MinimumCapacity Читает или устанавливает значение для начального числа строк данной таблицы (это значение по умолчанию равно 25)
ParentRelations Возвращает коллекцию родительских отношений для данного объекта DataTable
PrimaryKey Читает или устанавливает массив столбцов, функционирующих в качестве первичных ключей для таблицы данных
RemotingFormat Позволяет определить, как объект DataSet должен выполнять сериализацию соответствующего содержимого (в двоичном или XML-формате) для слоя удаленного взаимодействия .NET. Это свойство появилось в .NET 2.0
TableName Читает или устанавливает имя таблицы. Это же свойство может быть указано в качестве параметра конструктора

В нашем примере мы установим свойство PrimaryKey типа DataTable равным объекту carIDColumn типа DataColumn.

static void Main(string[] args) {

// Установка первичного ключа для таблицы.

inventoryTable.PrimaryKey = new DataColumn[] { inventoryTable.Columns[0] };

}

На этом создание примера для DataTable завершается. Заключительным шагом будет вставка DataTable в DataSet-объект carsInventoryDS. Затем объект DataSet нужно оформлять вспомогательному методу PrintDataSet() (который ещё предстоит написать).

static void Main(string[] args) {

// Наконец, добавление таблицы в DataSet.

carsInventoryDS.Tables.Add(inventoryTable);

// Теперь вывод данных DataSet.

PrintDataSet(carsInventoryDS);

}

Метод PrintDataSet() просто выполняет цикл по всем DataTable из DataSet. печатая имена столбцов и значения строк с помощью индексатора типа.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Эндрю Троелсен читать все книги автора по порядку

Эндрю Троелсен - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание отзывы


Отзывы читателей о книге ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание, автор: Эндрю Троелсен. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x