Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 377

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 371 372 373 374 375 376 < 377 > 378 379 380 381 382 383 .. 404 >> Следующая


С помощью метода Delete о можно удалить запись с идентификатором, предаваемым этому методу в качестве параметра. Почти так же работают методы Add о и update!) за исключением того, что параметры могут содержать еще к данные, которые должны быть модифицированы нлн добавлены.
Практический пример 2 — Менеджер рассылки новостей в режиме онлайн

803

Класс SubscribersDB

Класс SubscribersDB предназначается ДЛЯ доступа К таблицам Subscribers н UaeraData. Он обладает структурой, аналогичной структуре класса ListsDB, и хранится в файле Subscribers. св. Все методы этого класса сведены в следующую таблицу:

Класс Subscribers D В Метод Описание
public SubscribersDB (string ConnString) Конструктор класса, которому в качестве параметра передается строка соединения, описываемая в установках файла
public DataSet GetSubscribers(int ListiD) Возвращает список подписчиков данного списка
public DataRow GetDetails(int SubscrlD) Позволяет получать подробную информацию о списке по заданному идентификатору
public bool Add(int ListiD, string FirstName, string LastName, string Einail) Добавляет нового подписчика
public bool Delete(int SubscrlD) Удаляет подписчика
public bool Update (int SubscrlD, string FirstName, string LastName, string Quail) Позволяет обновить подробную персональную информацию о подписчике
public int GetUserID(int SubscrlD) . Возвращает идентификатор пользователя по заданному идентификатору подписки
public int GetUserID<string Email) Возвращает идентификатор пользователя по заданному адресу электронной почты
public int GetSubscriberlD(int ListiD, string Bnail) Возвращает идентификатор подписчика для конкретного списка н конкретного пользователя, определяемый по уникальному адресу электронной почты

Этот класс оказывается несколько бсшее сложным, чем класс ListsDB, поскольку ему приходится иметь дело с двумя таблицами и управлять отношениями между ними. Функция GetSubscribersO возвращает всех подписчиков того списка, идентификатор которого передан ему в качестве параметра. В нем используется SQL-оператор, в котором содержится команда inner join, позволяющая получать информацию сразу НЗ двух таблиц — UsersData И Subscribers:

public DataSet GetSubsctibers (int ListiD)

(

string sqlCmd * 'SELECT FirstName, LastName, Snail,

sqlCmd +¦» 'Listip, User ID, CreatedDate, Subectibers.ID FROM OsersData “j sqlCmd +“ 'INNER JOIN Subscribers ON UsersData.ID“ Subsetibcrs.UeerlD *; sqlCrad += 'WHERE Subscribers .LiatID - ' + ListiD;

DataSet subsetibers = new DataSet();

OleDbCoimection myConn = new OleDbConnection(connString) ;

OleDbDataAdapter myDAdp = new OleDbDataAdapter(sqlCmd, rqyConn);

myDAdp.Fill(subscribers, 'Subscribers'); return subscribers;

Метод GetDetaiisO практически полностью аналогичен соответствующему методу класса ListsDB; отличие заключается в SQL-строке, которая у него такая же, как приведенная выше.
804

Практический пример

Методы Addo, Delete() и updateO позволяют вставлять, удалять и модифицировать подписку пользователей в новые списки. Они выполняют эту работу несколько по-другому, чем соответствующие методы класса ListsDB, Функция Delete () сначала удаляет подписчика нз указанного списка, а затем производит проверку, включен лн данный пользователь в какие-либо другие списки. Если нет, то информация о пользователе удаляется нз таблицы UsersData. Функция Add о не только добавляет подписчика в указанный список, но и проверяет, не совпадает лн переданный ей адрес электронной почты с каким-либо адресом, уже имеющимся в таблице usersData. Если нет, то делается предположение, что это новый пользователь, и он добавляется в таблицу. Для создаваемого приложения мы будем исходить нз предположения, что каждое вхождение поля электронной почты представляет уникального пользователя.

Далее приведены две перезагрузки метода GetuseriDO, которые предназначаются для внутреннего использования методами Delete о и Addo, Первый вариант принимает в качестве параметра идентификатор подписчика и возвращает идентификатор пользователя, привязанный к данной подписке; этот метод используется внутри метода Delete о. Вторая перезаг рузка принимает в качестве параметра строку адреса электронной почты и-возвращает идентификатор пользователя, привязанный к данному адресу, если таковой существует; этот метод используется внутри метода Add ().

Последняя функция данного класса —GetsubscriberiDf) — возвращает идентификатор подписчика определенного списка по указанному адресу электронной почты. Эта функция используется методом Addo, чтобы определить, существует лн уже пользователь, который осуществляет подписку на данный список, в таблице UsersData, ИЛИ нет. .

Класс NewsHistoryDB

Класс NewsHistoryDB (который ХрЭННТСЯ В файле NewsHailerDB.cs) является самым простым нз всех; он состоит всего лншь из четырех методов и параметризованного конструктора метода, как показано в приведенной ниже таблице:

Класс NewsHistoryDB Метод Описание
public NewsHistoryDB (string ConnString) Конструктор класса, которому в качестве параметра передается строка соединения, которая описывается в установках файла
Предыдущая << 1 .. 371 372 373 374 375 376 < 377 > 378 379 380 381 382 383 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.