Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архитектура информационных систем.docx
Скачиваний:
73
Добавлен:
23.05.2015
Размер:
32.29 Mб
Скачать

Конструктор FileStream

FileStream(String FileMode, FileAccess, FileShare, Int32,Boolean) - инициализирует новый экземпляер классаFileStreamс заданными путем, режимом создания, разрешениями на чтение и запись и совместное использование, размером буфера и синхронным и асинхронным состоянием

// Исрользование пути, режима доступа, разрешений, размер буфера и асинхронных операций

FileStream outF=new FileStream("a.txt",FileMode.Open,FileAccess.Write,FileShare.Read,100,true);

Синхронный ввод/вывод

Класс NetworkStream

Входит в пространство имен System.Net.Soketsи используется для отправки и получения данных через сетевые сокеты.

Небуферизированный поток(Seek(), Position())

Конструктор требует задать объект Socket, дополнительно - принадлежность потока и разрешения чтения/записи

Объект NetworkStreamможно получить от классаTcpClient

  • метод TcpCliet.GetStream()создает объектNetworkStream, передавая его базовый сокет как параметр конструктора.

Члены класса NetworkStream

Свойство

Описание

DataAvailable

Возвращает логическое знаечние, указывающее, доступны ли данные в потока для чтения. Значения trueуказывает, что данные в потоке достпуны

Readable

Используется для получения или усановки булевого значения, указывающего, разрешен ли доступ на чтение потока. Это свойство работает так же, как свойство CanHeadв других потоках

Socket

Возвращает базовый объект Socket

Writeable

Используется для проверки, можно ли записывать данные в этот поток. Значение trueозначает, что запись в поток разрешена. Свойства работает так же, как свойствоCanWrite

Пример tcPсервер

Пример - TCPклиент

Классы System.Net

IPAdrdress

Инкапсулирует IPадрес, позволяя его использовать со многими другими классами изSystem.Net

Для создания объекта - метод Parse:

  • IPAddressipa=IPAddress.Parse("192.168.1.2");

Предопределенные адреса

  • IPAddress.None- не использовать сетевой интерфейс (указывание серверу не ожидать активности клиента)

  • IPAddress.Loopback - localhost

  • IPAddress.Broadcast- широковещательныйIP-адрес

  • IPAddress.Any- ожидать действия на любом из сетевых интерфейсов.

Автономный режим

Общие положения

Подключенный уровень:

  • Взаимодействие с БД при помощи первичных объектов подключения, команд и чтения данных.

Автономный уровень:

  • Эмулирование данных с помощью модели объектов, находящихся в памяти

  • К смоделированным данным можно не подключаясь к БД применять фильтры, отправлять запросы и сохранять (или загружать) данные в формате XMLи двоичном формате.

Подключения...

Создание подключения -

  • наиболее затратное по производительности операций

  • требует большое количество двусторонних сетевых обменов между поставщиком данных и сервером БД

  • требует выделение выделения значительного объекта памяти как на стороне клиента, так и на стороне сервера.

Роль адаптера данных

Адаптер данных поставляет и обновляет данные

Адаптеры данных дердат подключение открытым минимально возможное время

  • Как только вызывающий процесс получит объект DataSet, вызывающий слой полностью отключается от базы данных и остается с локальной копией удаленных данных.

  • Теперь в ней можно вставлять, удалять или изменять строки различных объектов DataTable, но физическая база данных не обновляется, пока вызывающий процесс явно не передастDataSetадаптеру данных обновления.

DataSet

ADO.NetDataSetявляется находящимся в оперативной памяти представлением данных, включая таблицы, содержащие, упорядочивающие и ограничивающие данные, а также связи между таблицами.

Существует несколько способов работы с DataSet, которые могут применяться отдельно или в сочетании. Можно сделать следующее:

  • Программно создать DataTable,DataRelationиConstraintвнутриDataSetи заполнить таблицы данными

  • Заполнить DataSetтаблицами данных из существующего реляционного источника данных с помощьюDataAdapter