C #에서 제네릭 메서드의 값을 얻는 방법

오 사기

이 일반적인 방법이 있습니다.

public Guid Save<T>(T obj)
    {
        Guid newId = Guid.NewGuid();
        try
        {
            foreach (MethodInfo method in (typeof(T)).GetMethods())
            {
                if (IsXmlElement(method))
                {
                    // A way to get this method's value
                    // e.g. if T has method GetName, and GetName was assigned 'John' 
                    //i.e. object.GetName = 'John'Is there a way to get 'John' from this GetName method?
                }
            }

그런 다음 객체가 있습니다 myObject.Name = 'John'... 그리고 myObject가 save 메소드에 전달되었습니다. Save 메소드 Save(myObject);내에서 'John'값을 얻을 수있는 방법이 있습니까?

어떤 제안이라도 주시면 감사하겠습니다. 감사.

제네릭 유형을 기반으로 속성을 반복하려면 (예제에서 "메소드"라고 말할 때 속성을 의미한다고 가정합니다) TypeDescriptor클래스를 사용할 수 있습니다 .

public Guid Save<T>(T obj)
{
    Guid newId = Guid.NewGuid();
    try
    {
        foreach (PropertyDescriptor property in TypeDescriptor.GetProperties(typeof(T)))
        {
            if (IsXmlElement(method))
            {
                object value = property.GetValue(obj);
                // ...
            }
        }

항상 유형을 추론하는 경우 (즉, T항상 obj기본 유형이나 인터페이스가 아닌 유형 인 경우) 제네릭이 전혀 필요하지 않습니다.

public Guid Save(object obj)
{
    Guid newId = Guid.NewGuid();
    try
    {
        foreach (PropertyDescriptor property in TypeDescriptor.GetProperties(obj))
        {
            if (IsXmlElement(method))
            {
                object value = property.GetValue(obj);
                // ...
            }
        }

XmlSerializer수업을 확인하고 싶을 수도 있습니다 . 소스 개체에서 수동으로 XML을 만드는 것 같습니다. XmlSerializer더 적은 작업으로 필요한 모든 것이 이미있을 것입니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

C # 메서드에서 제네릭 클래스 참조를 얻는 방법

분류에서Dev

제네릭 메서드에서 제네릭 유형을 확인하는 방법

분류에서Dev

메서드 링크 된 제네릭 유형에 대한 TRTTIType을 얻는 방법

분류에서Dev

제네릭 메서드에서 유형 매개 변수의 값을 참조하는 방법

분류에서Dev

값 인수의 최종 형식을 얻기 위해 제네릭 메서드에서 실제 형식 인수를 대체하는 방법은 무엇입니까?

분류에서Dev

제네릭 메서드에서 실제 형식 인수를 대체하여 값 인수의 최종 형식을 얻는 방법은 무엇입니까?

분류에서Dev

제네릭 Dart 메서드에서 제네릭 유형 T에 대한 제약을 적용하는 방법

분류에서Dev

제네릭 형식 이름을 포함하여 제네릭 메서드의 이름을 검색하는 방법

분류에서Dev

C #에서 제네릭 형식 인 형식 컬렉션을 만드는 방법

분류에서Dev

C #에서 단일 연결 목록을 제네릭으로 만드는 방법

분류에서Dev

메서드의 반환 형식으로 C # 8에서 nullable 제네릭 형식을 허용하는 방법은 무엇입니까?

분류에서Dev

제네릭 목록 C # 유니티 내에서 두 값을 필터링하는 방법은 무엇입니까?

분류에서Dev

제네릭 정의 및 제네릭 인수에서 제네릭 유형을 얻는 방법은 무엇입니까?

분류에서Dev

부분적으로 닫힌 제네릭에서 유형을 얻는 방법

분류에서Dev

C # 제네릭 메서드 값

분류에서Dev

제네릭 형식을 반환하는 제네릭 메서드를 만드는 방법

분류에서Dev

와일드 카드를 사용하여 제네릭 메서드의 동작을 모의하는 방법

분류에서Dev

메서드 선언에 두 가지 제네릭 유형을 정의하는 방법이 있습니까?

분류에서Dev

C #에서 제네릭 메서드 오버로드를 만드는 방법은 무엇입니까?

분류에서Dev

C #의 제네릭 클래스가있는 제네릭 메서드

분류에서Dev

컴파일러에서 찾을 수없는 제네릭 형식 클래스의 C # 확장 메서드

분류에서Dev

TypeScript에서 제네릭 형식을 반환하는 방법

분류에서Dev

React.FC에서 제네릭을 사용하는 방법

분류에서Dev

SwiftUI에서 제네릭 뷰 유형을 반환하는 방법

분류에서Dev

모듈에서 다중 제네릭을 사용하는 방법?

분류에서Dev

Scala에서 제네릭을 사용하는 방법

분류에서Dev

Scala foreach에서 제네릭 유형을 복원하는 방법

분류에서Dev

.NET 제네릭 메서드에서 실제 매개 변수 유형을 가져 오는 방법

분류에서Dev

C #은 "일부"클래스에서 함수를 호출하는 방법을 알고있는 제네릭 메서드를 만듭니다.

Related 관련 기사

  1. 1

    C # 메서드에서 제네릭 클래스 참조를 얻는 방법

  2. 2

    제네릭 메서드에서 제네릭 유형을 확인하는 방법

  3. 3

    메서드 링크 된 제네릭 유형에 대한 TRTTIType을 얻는 방법

  4. 4

    제네릭 메서드에서 유형 매개 변수의 값을 참조하는 방법

  5. 5

    값 인수의 최종 형식을 얻기 위해 제네릭 메서드에서 실제 형식 인수를 대체하는 방법은 무엇입니까?

  6. 6

    제네릭 메서드에서 실제 형식 인수를 대체하여 값 인수의 최종 형식을 얻는 방법은 무엇입니까?

  7. 7

    제네릭 Dart 메서드에서 제네릭 유형 T에 대한 제약을 적용하는 방법

  8. 8

    제네릭 형식 이름을 포함하여 제네릭 메서드의 이름을 검색하는 방법

  9. 9

    C #에서 제네릭 형식 인 형식 컬렉션을 만드는 방법

  10. 10

    C #에서 단일 연결 목록을 제네릭으로 만드는 방법

  11. 11

    메서드의 반환 형식으로 C # 8에서 nullable 제네릭 형식을 허용하는 방법은 무엇입니까?

  12. 12

    제네릭 목록 C # 유니티 내에서 두 값을 필터링하는 방법은 무엇입니까?

  13. 13

    제네릭 정의 및 제네릭 인수에서 제네릭 유형을 얻는 방법은 무엇입니까?

  14. 14

    부분적으로 닫힌 제네릭에서 유형을 얻는 방법

  15. 15

    C # 제네릭 메서드 값

  16. 16

    제네릭 형식을 반환하는 제네릭 메서드를 만드는 방법

  17. 17

    와일드 카드를 사용하여 제네릭 메서드의 동작을 모의하는 방법

  18. 18

    메서드 선언에 두 가지 제네릭 유형을 정의하는 방법이 있습니까?

  19. 19

    C #에서 제네릭 메서드 오버로드를 만드는 방법은 무엇입니까?

  20. 20

    C #의 제네릭 클래스가있는 제네릭 메서드

  21. 21

    컴파일러에서 찾을 수없는 제네릭 형식 클래스의 C # 확장 메서드

  22. 22

    TypeScript에서 제네릭 형식을 반환하는 방법

  23. 23

    React.FC에서 제네릭을 사용하는 방법

  24. 24

    SwiftUI에서 제네릭 뷰 유형을 반환하는 방법

  25. 25

    모듈에서 다중 제네릭을 사용하는 방법?

  26. 26

    Scala에서 제네릭을 사용하는 방법

  27. 27

    Scala foreach에서 제네릭 유형을 복원하는 방법

  28. 28

    .NET 제네릭 메서드에서 실제 매개 변수 유형을 가져 오는 방법

  29. 29

    C #은 "일부"클래스에서 함수를 호출하는 방법을 알고있는 제네릭 메서드를 만듭니다.

뜨겁다태그

보관