결론은 "큰 그림"당신은 당신이 그것에 대하여 코딩을 진행하기 전에 인스턴스가 null의 경우는 알아야한다. 그 단계를 둘러싼 지름길을 찾을 이유가 없습니다.
그렇다면 C# 3 이상을 사용하는 경우 코드의 기본 로직에서이 세부 정보를 "숨기"는 데 사용할 수있는 Extensions 메서드가 있습니다. 아래의 'SomeType'및 'SomeMethod'샘플과 'SomeMethodSafe'라는 확장 메서드를보십시오. 오류없이 Null 참조에서 'SomeMethodSafe'를 호출 할 수 있습니다.
집에서 시도하지 마십시오.
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
SomeType s = null;
//s = new SomeType();
// uncomment me to try it with an instance
s.SomeMethodSafe();
Console.WriteLine("Done");
Console.ReadLine();
}
}
public class SomeType
{
public void SomeMethod()
{
Console.WriteLine("Success!");
}
}
public static class SampleExtensions
{
public static void SomeMethodSafe(this SomeType t)
{
if (t != null)
{
t.SomeMethod();
}
}
}
}
null 체크와 함께 'as'를 사용하면 얻을 수있는 것처럼 간소화됩니다. –
아래의 제안 사항을 참조하십시오. 전처리 기 사용 : – John