我正在与RPC(protobuf-remote),我需要做一些检查,以防另一端(服务器)关闭。比方说,我一直的RPC方法很多的,如:C#重复代码与空检查
public FirstObj First(string one, string two)
{
if (rpc == null)
return (FirstObj)Activator.CreateInstance(typeof(FirstObj));
return rpc.First(one, two);
}
public SecondObj Second(string one)
{
if (rpc == null)
return (SecondObj)Activator.CreateInstance(typeof(SecondObj));
return rpc.Second(one);
}
public ThirdObj Third()
{
if (rpc == null)
return (ThirdObj)Activator.CreateInstance(typeof(ThirdObj));
return rpc.Third();
}
反正是有改变这种重复的空校验码?所以,我可以写的东西,如:
public FirstObj First(string one, string two)
{
return rpc.First(one, two);
}
这将做无效检查,如果RPC服务器是下降了它的类型将创建对象,所以我会得到所需要的对象的默认值。
或'无功第一= rpc.GetObject(·R => R。首先(A,B)) ;' – NtFreX
@ Dr.Fre不需要。如果r为空,则首先将不会被调用。 –