на начало
На главную страницу
Форум   

Статья :: Пример удаленного объекта


Пример удаленного объекта

Для нашего примера удаленного доступа мы изолируем наш объект Customers (Клиенты) от сборки Customer (Клиент). В папке примера Remoting находятся два решения. Одно представляет собой клиентскую часть программы, другое — серверную. Сначала нужно скомпоновать серверную часть приложения. При этом также создастся Customer.dll. Необходимо скопировать эту динамически подключаемую библиотеку (DLL) в папку Debug (Отладка) для решений Server (Сервер) и Client (Клиент). Нужно обратить внимание, что сначала запускается программа-сервер, которая после запуска переходит в режим ожидания клиентского запроса. После этого можно выполнить клиентскую часть приложения, которая активизирует объекты, существующие внутри сервера. Подробности программного кода клиента и сервера мы обсудим в нескольких последующих разделах.
Отметим, что нужно было внести два простых изменения в наш объект. Класс Customers (Клиенты) в проекте сервера — удаленный (с возможностью удаленного доступа), — для этого мы сделали его производным от MarshalByRefObject.

public _gc class Customers :
// класс сборщика мусора Клиенты:
public MarshalByRefObject, public ICustomer

CustomerListltem, который будет передаваться по значению, должен быть сделан преобразуемым в последовательную форму.

[Serializable]
// [Преобразуемый в последовательную форму]
public _value struct CustomerListltem
{
public:
int Customerld;
String *FirstName; // Строка
String *LastName; // Строка
String *EmailAddress; // Строка
};


Пример удаленного объекта

страницы в данном разделе 
Глава 8. Классы каркаса .NET Framework Классы каркаса .NET Framework
Метаданные и отражение Класс туре (Тип)
Динамическое связывание Ввод и вывод в .NЕТ
Потоковые классы Примитивные типы данных и потоки
TextReader И TextWriter Обработка файлов
Сериализация, или преобразование в последовательную форму Объекты сериализации
ISerializable Модель приложений .NET
Поток Изоляция потоков
Синхронизация коллекций Контекст
Заместители и заглушки ContextBoundObject
Изоляция приложений Прикладная область
Прикладные области и сборки Класс AppDomain (Прикладная область)
События AppDomain (Прикладная область) Пример AppDomain (Прикладная область)
Маршализация, прикладные области и контексты Асинхронное программирование
Асинхронные шаблоны проектирования lAsyncResult
Использование делегатов в асинхронном программировании Организация поточной обработки с параметрами
Удаленный доступ Краткий обзор удаленного доступа
Удаленные объекты Активация
Пример удаленного объекта Пример программы, реализующей удаленный доступ
Метаданные и удаленный доступ Конфигурационные файлы удаленного доступа
Программируемые атрибуты Использование самостоятельно созданного атрибута
Определение класса атрибута Определение базового класса
Сборка мусора Уничтожение объектов
Неуправляемые ресурсы и освобождение ранее выделенной области памяти Поколения
Завершение и раскручивание стека Управление сборкой мусора с помощью класса сборщика мусора GC
Программа-пример Резюме


Содержание сайта (выборка)
Apache
Протоколы TCP/IP (принципы, протоколы и архитектура)



PHP, PELR, JSP
PHP
JavaServer Pages (JSP)

Базы данных
Основы mysql
СУБД INFORMIX
СУБД POSTGRES
Основы проектирования реляционных баз данных

HTML, javascript
Спецификация HTML 4.01
Каскадные Таблицы Стилей, Уровень 2
Клиентский JavaScript. Справочник.
JavaScript руководство пользователя
Серверный JavaScript 1.4. Руководство по Использованию.

Паскаль, C, C++, C#
GCC (примеры)
FAQ Валентинa Озеровa DELPHI
C



 
© faq.pp.ru, справочник программиста