Это может быть выполнено с использованием следующих интерфейсов:
IClientChannelSink, IClientChannelSinkProvider, IServerChannelSink и IServerChannelSinkProvider
Используя эти интерфейсы, можно создать приемник клиента, который может добавлять новую глобальную информацию к каждому вызову в качестве значения заголовка, а приемник сервера может извлекать это значение заголовка и сохранять его для использования логическим кодом.
Обзор высокого уровня можно найти по адресу http://www.diranieh.com/NETRemoting/ExtendingNET.htm
Раздел конфигурации клиента для включения приемника клиента:
<system.runtime.remoting>
<application>
<channels>
<channel ref="tcp" port="0" encryption="EncryptAndSign">
<clientProviders>
<provider
type="Namespace.ClientSinkProvider, dll"/>
</clientProviders>
</channel>
</channels>
</application>
</system.runtime.remoting>
Раздел конфигурации сервера для включения приемника сервера:
<system.runtime.remoting>
<application>
<channels>
<channel ref="tcp" port="0" encryption="EncryptAndSign">
<serverProviders>
<provider
type="Namespace.ServerSinkProvider, dll" />
</serverProviders>
</channel>
</channels>
</application>
</system.runtime.remoting>