我有一个服务,我使用.net远程连接。
我想调用一个方法,该方法继承自方法签名中的类型。
但是当我使用派生类型调用时,我在进行远程调用时会得到一个IndexOutOfRangeException:
public class BaseClass { }
public class DerivedClass : BaseClass
{
public string ExtraProperty { get; set; }
}
public class RemoteObject
{
public void MyMethod(BaseClass obj)
{
/* things */
}
}
public class Main
{
public static Main()
{
// pretend this is using System.Activator and
// System.Runtime.Remoting to do magic
RemoteObject ro = RemotingHelper.GetRemoteObject();
// works
ro.MyMethod(new BaseClass());
// IndexOutOfRangeException
ro.MyMethod(new DerivedClass());
}
}
据推测就是这样,但是有什么工作吗?