Qual é a maneira mais simples de se conectar a um objeto de servidor remoto .NET
-
09-06-2019 - |
Pergunta
Dado que meu código cliente sabe tudo o que precisa sobre o objeto remoto, qual é a maneira mais simples de conectar-se a ele?
Isso é o que estou fazendo no momento:
ChannelServices.RegisterChannel(new HttpChannel(), false);
RemotingConfiguration.RegisterWellKnownServiceType(
typeof(IRemoteServer), "RemoteServer.rem", WellKnownObjectMode.Singleton);
MyServerObject = (IRemoteServer)Activator.GetObject(
typeof(IRemoteServer),
String.Format("tcp://{0}:{1}/RemoteServer.rem", server, port));
Solução
As duas primeiras linhas estão no código do lado do servidor, para organizar o objeto do servidor, certo?
Nesse caso, sim, a terceira linha é a mais simples que você pode obter no lado do cliente.
Além disso, você pode fornecer objetos adicionais do lado do servidor a partir do MeuServidorObject por exemplo, se você incluir acessadores públicos para eles em IRemoteServer interface, portanto, acessar esses objetos torna-se uma simples questão de chamadas de método ou acessos de propriedade em seu objeto de servidor principal, para que você não precise usar o ativador para cada coisa:
//obtain another marshalbyref object of the type ISessionManager:
ISessionManager = MyServerObject.GetSessionManager();
Outras dicas
WCF.
Eu usei o IPC antes do WCF e, acredite, o IPC é um urso.E não está documentado de forma completa/correta.
Qual é a maneira mais simples de conectar-se a um objeto de servidor remoto .NET?WCF.