1
我需要一個具有擴展搜索機制的泛型列表,因此我創建了一個具有addirional索引器的泛型列表(基數爲List<T>
)。所以在這裏,如果T是一個對象,那麼該列表允許基於一個字段獲取該項目。下面是示例代碼PropertyInfo.GetValue(object obj,object [] index)引發'Target'異常
public class cStudent
{
public Int32 Age { get; set; }
public String Name { get; set; }
}
TestList<cStudent> l_objTestList = new TestList<cStudent>();
l_objTestList.Add(new cStudent { Age = 25, Name = "Pramodh" });
l_objTestList.Add(new cStudent { Age = 28, Name = "Sumodh" });
cStudent l_objDetails = l_objTestList["Name", "Pramodh"];
而我genereic名單
class TestList<T> : List<T>
{
public T this[String p_strVariableName, String p_strVariableValue]
{
get
{
for (Int32 l_nIndex = 0; l_nIndex < this.Count; l_nIndex++)
{
PropertyInfo l_objPropertyInfo = (typeof(T)).GetProperty(p_strVariableName);
object l_obj = l_objPropertyInfo.GetValue("Name", null); // Wrong Statement -------> 1
}
return default(T);
}
}
}
但我不能得到的財產,它的投擲「目標異常」的價值。
請幫我解決這個問題。