сложно понять без кода ...
не знаю подойдёт ли это вам
но для того что бы все клиенты обращались к одному обеькту достаточно использовать static
ваш класс MainClass , сначала создаёте экземпляр mainClass , потом регистрируете в Remoting класс обёртку Remote , вызов метода Method, будет вызываться метод статического класса
static MainClass mainClass;
public class Remote : MarshalByRefObject,
{
public override object InitializeLifetimeService()
{
ILease x = (ILease)base.InitializeLifetimeService();
if (x.CurrentState == LeaseState.Initial)
{
x.InitialLeaseTime = TimeSpan.FromSeconds(0); // поставить 0
}
return x;
}
#region
public string Method(Class r)
{
return mainClass.Method(r);
}
#endregion
}
регистрируете
RemotingConfiguration.RegisterWellKnownServiceType(typeof(Remote), "XXX.tcp", WellKnownObjectMode.Singleton);
или смотреть Singleton
http://ru.wikipedia.org/wiki/%D0%9E%D0%B4%D0%B8%D0%BD%D0%BE%D1%87%D0%BA%D0%B0_%28%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F%29#.D0.9F.D1.80.D0.B8.D0.BC.D0.B5.D1.80_C.23
хотя не знаю как он с remoting работает ....