// некоторые коды здесьКак установить targetPi? Я думаю, что определение неверно, но я не знаю, как я могу это исправить?
object target = Activator.CreateInstance(typeof(T));
PropertyInfo[] sourceProperties = sourceType.GetProperties();
foreach (PropertyInfo pi in sourceProperties)
{
PropertyInfo targetPi = typeof(T).GetProperty(pi.Name); //returns null why?
object piValue = pi.GetValue(source, null);
try
{
if (targetPi != null) // it doesnt work
{
targetPi.SetValue(target,piValue, null); // target has typeof(T)
}
}
catch { }
}
return(T)target;
}
Вы не сказали нам * ничего * о том, что вы пытаетесь достичь. Вы только что опубликовали плохо отформатированный код, и все. Пожалуйста, см. Http://tinyurl.com/so-hints –