2017-11-13 21 views
-2

클래스 T를 매개 변수로 전달하기 만합니다. 예 :중첩 된 T 클래스를 동적으로 추가하고 다른 T 클래스 (GetProperty, GetType, SetValue)로 채우기

에서 :

SetValue는 (Car.parts "엔진");

to :

SetValue (T.partes, "engine");

은 generic으로 중첩 된 클래스를 매개 변수로 전달하기 만하면됩니다.

도움 주셔서 대단히 감사합니다.

여기에 DETAILED. 하지만 꼭 필요한 것은 하나뿐입니다.

안녕하세요. 클래스 T에 일부 값을 동적으로 채우고 싶습니다. 여기 내 예 :

이 클래스는 익숙합니다.

클래스 모델 model = new ClassModel();

model.autos = 새로운 ClassModel.Auto() 중첩 클래스를 가지고;

쓰기 ClassModel = typeof (ClassModel);

var AutoClass = ModelClass.GetProperty ("autos");

var AutoProp = Type.GetType (ClaseAuto.GetMethod.ReturnType.FullName) .GetProperties();

AutoProp [0] .SetValue (model.autos, 1);

// 여기가 작동하고 매개 변수를 전달하지만 클래스 인 경우 자동차의 가치는 어떻게 전달됩니까? 예 :

AutoProp [0] .SetValue (T.autos, 1);

클래스가 T. 이기 때문에 차를 알 수없고 동시에 T를 채우는 것이 더 쉽습니다. 첫 번째 T는 클래스에 해당하므로 을 쉽게 식별하고 채울 수 있습니다.

ClassModel.SetValue (T, AutoProp); 프로세스가 종료 될 때이 후

변수의 성공은 변수에 전달되는 확증하는

/* 내 클래스가 회복되면, 나는 이미 모든 방법을 알고 있지만, 클래스 내부 TI는 몰라 메소드를 호출하지만 클래스 자동차를 name = "autos"로 보내면 알 수 있습니다. 그러나 값을 전달하는 방법을 아직 모릅니다. */ int result = model.autos.id;

제공된 도움말을 제공해 주셔서 감사합니다.

+0

안녕하세요. 영어로만하십시오! – yacc

+1

스페인어 사이트는 https://es.stackoverflow.com입니다. 거기에 귀하의 질문을 게시하십시오. –

+0

여기에 게시하려면 적어도 Google 번역사를 사용하십시오. – Ibo

답변

0

단순히 클래스 T를 중첩 된 클래스로 가져온 다음 더 많은 값을 일반 클래스로 사용하려면 GetValue (T)를 추가하고 일반 클래스 인 것처럼 클래스를 전달할 준비가되었습니다.

클래스는 T

SetValue는 하나의 딸 클래스 테스트 (T.GetType()하는 getProperty ("입증") GetValue (T) 1..);