最近在学remoting,选择windows服务作为宿主服务,我在web页面上传dll,dll信息放在xml中,然后在windows服务中遍历xml,并将全部的dll反射出来。问题是如果xml只有一条dll的信息,程序没有问题,而xml信息超过一条,windows服务启动就出错了;我又尝试将不用循环去反射,并将端口、程序集名之类的直接赋给,windows服务还是出错。端口之类的信息不相同的,请问怎样解决?下面是循环里面的代码:
TcpChannel tc = new TcpChannel(int.Parse(ds.Tables[0].Rows[i]["Port"].ToString()));
ChannelServices.RegisterChannel(tc, false);
adl = new AssemblyDynamicLoader();
Assembly asm = adl.InvokeClass(ds.Tables[0].Rows[i]["Url"].ToString());
Type type = asm.GetType(ds.Tables[0].Rows[i]["TypeName"].ToString());
RemotingConfiguration.RegisterWellKnownServiceType(type, ds.Tables[0].Rows[i]["Name"].ToString(), WellKnownObjectMode.SingleCall);