이 질문을 잘 수행하는 방법을 잘 모르겠습니다. 그것이 불분명하면 죄송합니다. 개체의 실제 유형이 아니라 개체가 작동하는 유형을 결정하려고합니다. C# 개체 유형 결정
내가이 두 클래스 말해봐 ... ... 이public class A{
public A() {
string thisTypeName = this.GetType().???; // the value I'm looking for here is "A" not "B"
}
}
public class B : A { }
내가 원하지 않는 것은을
string thisTypeName = this.GetType().BaseType.Name;
때문에 나는 ...이 작업을 수행하기로 결정한 경우
public class C : B { }
... then this this.GetType(). BaseType이 A.이 아닌 B 클래스를 참조합니다.
기본 제공 방법이 있나요? 아마도 내가 원하는 것을 할 Type에 확장 메서드를 작성할 수있을 것이라고 추측합니다.
을'문자열 thisTypeName = typeof (A)' –
클래스의 코드에 들어 있기 때문에 _this_ 타입을 이미 알고 있다면 왜 GetType()과 같은 메소드에서 그것을 얻으려고 하는가? –
정확히 어떤 유형입니까? 모든 클래스는'Object' 클래스를 상속합니다. 그래서 모든 클래스의 "가장 기본"클래스가됩니다. 'Object'가 아닌 '대부분의 기본 클래스'를 원하십니까? 같은 어셈블리에서 "가장 기본"클래스를 원하십니까? – Guffa