Книга: C# для профессионалов. Том II
Простой сервер
Простой сервер
Для сервера используется консольное приложение C#. Для применения класса TcpServerChannel
необходимо сослаться на сборку System.Runtime.Remoting.dll
. Также требуется, чтобы мы ссылались на созданную ранее сборку RemoteHello.dll
.
В методе Main()
создается объект System.Runtime.Remoting.Channel.Тcр.TcpServerChannel
с портом номер 8086. Этот канал регистрируется в классе System.Runtime.Remoting.Channels.ChannelServices
, чтобы сделать его доступным для удаленных объектов. Тип удаленного объекта регистрируется с помощью System.Runtime.Remoting.RemotingConfiguration.RegisterWellKnownServiceType
. Здесь определяется тип класса в удаленном объекте, используемый клиентом URI, и режим. Режим WellKnownObject.SingleCall
означает, что для каждого вызова метода создается новый экземпляр, мы не храним состояние в удаленном объекте.
После регистрации удаленного объекта продолжим выполнение сервера, пока не будет нажата клавиша:
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp;
namespace Wrox.ProfessionalCSharp {
/// <summary>
/// Краткое описание Class1
/// </summary>
public class HelloServer {
public static void Main(string[] args) {
TcpServerChannel channel = new TcpServerChannel(8086);
ChannelServices.RegisterChannel(channel);
RemotingConfiguration.RegisterWellKnownServiceType(
typeof(Hello), "Hi", WellKnownObjectMode.SingleCall);
System.Console.WriteLine("hit to exit");
System.Console.ReadLine();
}
}
}
- Простой клиент
- 19.5.1. Простой пример
- 21.8 Более простой сервер
- 17.6.3. Простой tftp-сервер
- 1.5. Простой сервер времени и даты
- Простой файловый сервер
- 18.1.1. Простой сервер: время дня
- Тестирующие программы
- Бесплатные программы для раскрутки сайта
- Приложение 2 Полезные программы
- 13.4.5. Полная копия
- Программы, которыми мы будем пользоваться