Книга: C# для профессионалов. Том II

Сервер

Сервер

Сервер реализуется внутри консольного приложения. Мы ожидаем только, чтобы пользователь завершил работу сервера после чтения конфигурационного файла и настройки канала и удаленного объекта:

using System;
using System.Runtime.Remoting;
namespace Wrox.ProfessionalCSharp {
 class Server {
  static void Main(string[] args) {
   RemotingConfiguration.Configure("Server.exe.config");
   Console.WriteLine("Hit to exit");
   Console.ReadLine();
  }
 }
}

Конфигурационный файл сервера

Способ создания конфигурационного файла сервера Server.exe.config мы уже обсуждали. Существует только один важный момент. Так как клиент сначала регистрирует обработчик событий и после этого вызывает удаленный метод, то удаленный объект должен сохранять состояние клиента. Можно использовать с событиями объекты SingleCall, поэтому класс RemoteObject конфигурируется в виде активированного клиентом типа:

<configuration>
 <system.runtime.remoting>
  <application name="CallbackSample">
   <service>
    <activated type="Wrox.ProfessionalCSharp.RemoteObject, RemoteObject" />
   </service>
   <channels>
    <channel type="System.Runtime.Remoting.Channels.Http.HttpChannel, System.Runtime.Remoting" port="6791" />
   </channels>
  </application>
 </system.runtime.remoting>
</configuration>

Оглавление книги


Генерация: 0.391. Запросов К БД/Cache: 0 / 0
поделиться
Вверх Вниз