나는 C#의 반사 개념을 배우고 있습니다. 이 클래스가 있습니다.간단한 질문 : C#의 반사
public class pdfClass
{
public List<AttributeProperties> TopA { get; set; }
public List<AttributeProperties> TopB { get; set; }
public List<AttributeProperties> TopC { get; set; }
}
다른 클래스에서 목록에서 값을 추출하고 싶습니다. 나는 그것을하기 위해 어리석은 방법을 가지고있다.
public void ExtractValue (pdfClass incomingpdfClass, string type)
{
switch (type)
{
case "TopA":
foreach (var listitem in incomingPdfClass.TopA)
{...}
breaks;
case "TopB":
foreach (var listitem in incomingPdfClass.TopB)
{...}
breaks;
...
}
}
foreach 루프의 연산은 비슷하다. 어떻게 반사를 사용하여 명확한 방법으로이 작업을 수행 할 수 있습니까?
은 왜 이것에 대한 반사를 사용하는 것처럼 사용 나는 그런 사전을 지속하여 전략 자체에서 유형을 분리하는 것이 좋습니다 것입니다 ? –
이 질문은 명확하지 않습니다. 게시 한 코드, 특히 두 번째 예제는 컴파일되지 않습니다 (switch 문은 클래스에있을 수 없습니다). ExtractValue 클래스에서 TopA, TopB 등의 속성에 대한 참조를 얻는 방법은 무엇입니까? pdfClass에서 상속합니까? 우리는 더 좋은 모범이 필요합니다. –
@Seen : 당신은 pdfClass의 인스턴스를 가지고 있습니까? – sll