쉽게 찾을 수없고 편집 할 수없는 기존 코드의 로직을 테스트하고 있지만 코드에있는 객체에는 null이 포함 된 객체가 50 개 이상 있습니다 이유가 무엇이든지. 내가 뭘 찾고 있어요 : 내 테스트 코드에서 반사를 사용하여, 내가 테스트하고있는 클래스의 모든 내부 개체를 통과하고 그 개체가 null 인 경우 그냥 인스턴스화.리플렉션을 사용하여 객체 내부에서 컨트롤 속성을 인스턴스화합니다.
이Type ucApprovedType = ucApproved.GetType();
System.Reflection.FieldInfo[] fieldInfo = ucApprovedType.GetFields(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
foreach (System.Reflection.FieldInfo ucFieldInfo in fieldInfo)
{
Control control = ucApproved.FindControl(ucFieldInfo.Name);
if (control == null)
control = new Control();
//Set instantiated control back to ucApproved item
}
내가 위에서 실행 해요 첫 번째 문제는 컨트롤이 다시는 null의 FindControl (ucFieldInfo.Name) 호출에서오고 있다는 것입니다 : 이것은 내가 지금까지 가지고있는 것입니다. 그런 다음 일단 내가 instatiated 컨트롤을 가지고, 내가 할 수 없어 이후 ucApproved 개체에 값을 설정하는 방법을 모르겠다 ucApproved.Controls[0] = control
ControlCollection 읽기 전용이기 때문에.
이것은 훌륭하게 작동했습니다! (여러 유형의 컨트롤에 대한 자격이 있음) 감사합니다. – IWriteApps