Я пошел с избирателями Symfony: https://symfony.com/doc/current/security/voters.html
Не смог достичь этого без роли безопасности без регистрации отъезд.
Канал с определенным номером порта может быть создан только одним экземпляром приложения. Вам нужно использовать разные номера портов и имена каналов для каждого экземпляра.
Для этого необходимо использовать отдельные шаблоны каналов (если вы используете шаблоны?).
Как уже говорили другие, если вы не указываете имя канала, код по умолчанию использует «tcp», и у каждого канала должно быть уникальное имя: поэтому укажите уникальное имя для каждого канал, который вы открываете ...
int tcpPort = 52131;
// ------------------------------------------------------------
BinaryServerFormatterSinkProvider serverProv =
new BinaryServerFormatterSinkProvider();
serverProv.TypeFilterLevel = TypeFilterLevel.Full;
RemotingConfiguration.CustomErrorsMode = CustomErrorsModes.Off;
serverProv.TypeFilterLevel = TypeFilterLevel.Full;
IDictionary propBag = new Hashtable();
// -----------------------------------------
bool isSecure = [true/false];
propBag["port"] = tcpPort ;
propBag["typeFilterLevel"] = TypeFilterLevel.Full;
propBag["name"] = "UniqueChannelName"; // here enter unique channel name
if (isSecure) // if you want remoting comm to be secure and encrypted
{
propBag["secure"] = isSecure;
propBag["impersonate"] = false; // change to true to do impersonation
}
// -----------------------------------------
tcpChan = new TcpChannel(
propBag, null, serverProv);
ChannelServices.RegisterChannel(tcpChan, isSecure);
// --------------------------------------------
string uRI = MyUniversalResourceIndicatorName;
// ---------------------------------------------
RemotingConfiguration.RegisterWellKnownServiceType(
typeof(ImportServiceManager), uRI ,
WellKnownObjectMode.SingleCall);
Один и тот же канал с одинаковым номером порта можно создать только один раз для AppDomain
. Это то, что не так?