c# ipc 传递对象出错
现在需要共享一个对象,服务端负责创建对象和赋值,客户端使用对应的对象.目前在客户端获取对应的对象是可行的,但是访问对应的成员变量,则会出现异常.以下为代码
远程对象类:
public class WavePlayerInfoRemotingModel : MarshalByRefObject
{
public WavePlayerInfoModel PlayModel{get;set;}
public List<WavePlayerInfoModel> ListModel { get; set; }
}
服务端:
serverChannel = new IpcServerChannel("vicplayerforvrs");
ChannelServices.RegisterChannel(serverChannel, true); RemotingConfiguration.RegisterWellKnownServiceType(typeof(WavePlayerInfoRemotingModel), "vic", WellKnownObjectMode.Singleton);
WavePlayerInfoRemotingModel infoModel = GetRemoteObject(serverChannel.GetChannelUri());
infoModel.PlayModel = modelToPlay;
infoModel.ListModel = modelsAddToList.ToList();
客户端:
channel = new IpcClientChannel();
ChannelServices.RegisterChannel(channel, true);
LIS.Model.WavePlayerInfoRemotingModel objRemoteObject = (WavePlayerInfoRemotingModel)Activator.GetObject(typeof(WavePlayerInfoRemotingModel), string.Format("{0}/vic", ipc));
WavePlayerInfoModel tmp = objRemoteObject.PlayModel; //异常