類的屬性名作為一個引數傳遞給一個方法,該方法根據傳遞的引數對該屬性賦值,該如何做呢?
如類
class claa
{
List<int> p1{ get; set; } ;
List<int> p2{ get; set; } ;
}
void set pp(claa aa, string p)
{
aa.?? ={1,2,2};
}
aa.??怎么直接跟 傳遞的引數p對應起來,不要使用case之類的方法
uj5u.com熱心網友回復:
可以利用反射獲取aa物件的屬性名也就是獲取p1 p2uj5u.com熱心網友回復:
System.Reflection.PropertyInfo[] properties = aa.GetType().GetProperties();foreach (System.Reflection.PropertyInfo item in properties)
{
object name = item.Name; //這里的item.name就是 p1 p2 然后你就可以拿著屬性名去和你傳入的P進行比較了
}
我不知道你是不是這個意思,如果我理解錯了就當我沒說
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/241638.html
標籤:C#
