Tôi đang làm việc với RPC (protobuf-remote) và tôi cần thực hiện kiểm tra trong trường hợp đầu kia (máy chủ) bị hỏng. Giả sử tôi có nhiều phương thức RPC, như:C# Mã lặp lại với kiểm tra rỗng
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();
}
Có cách nào để thay đổi mã kiểm tra không lặp lại lặp lại này không? Vì vậy, tôi có thể viết một cái gì đó như:
public FirstObj First(string one, string two)
{
return rpc.First(one, two);
}
Điều gì sẽ không kiểm tra và sẽ tạo đối tượng theo loại nếu máy chủ RPC bị hỏng, vì vậy tôi sẽ nhận được giá trị mặc định của đối tượng được yêu cầu.
Hoặc 'var (? .First r => r (a, b)) đầu tiên = rpc.GetObject ; ' – NtFreX
@ Dr.Fre không cần thiết. Nếu r là null, đầu tiên sẽ không được gọi là anyway. –