RPC (protobuf-remote)로 작업 중이며 다른 쪽 (서버)이 다운 된 경우에 대비하여 몇 가지 검사를 수행해야합니다. RPC 메소드가 많이 있다고 가정 해 보겠습니다.null check가있는 반복 코드
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();
}
이 반복적 인 Null- 확인 코드를 변경하는 방법이 있습니까? 그래서 내가 좋아하는 뭔가를 쓸 수있다 : 널 (null) 검사를 할 것입니다 및 RPC 서버가 다운 된 경우의 유형으로 객체를 생성 할
public FirstObj First(string one, string two)
{
return rpc.First(one, two);
}
를, 그래서 필요한 개체의 기본 값을 얻을 것이다.
당신은 일반적인 방법으로 코드를 단순화 할 수
또는'var에 첫번째 = rpc.GetObject (? R => R 좁은 방 (A, B)) ; ' – NtFreX
@ Dr.Fre는 필요하지 않습니다. r가 null의 경우, First는 어쨌든 호출되지 않습니다. –