我有一個複雜的類,其字段可以是列表字典和任何其他類。一些基本的數據類型是int
,bool
,string
或某些枚舉。我需要創建一個函數,該函數接受該類的一個實例和一個字符串,並根據是否提及字符串返回true或false。多維對象內的深度搜索
public class Record
{
public Dictionary<string,int> Counts { get; set; }
public Dictionary<string,list<string>> Syns {get; set;}
public string Name { get; set; }
public KeyValuePair<string,KeyValuePair<string,bool>> Stuff { get; set; }
//etc
}
這裏是什麼方法應該做
public static bool IsValuePresent(Object o, string keyword)
{
//cycle through all possible string values of o and check if keyword is present.
//return true if so, otherwise false
}
可能的呼叫:
Record record = dbAccess.GetCurrent();
bool flag = IsValuePresent(record, "Name");
備註:可以使用ToJSON
但是這將驗證是否"name"
存在的對象屬性的名稱中,但它應該只驗證值。
您的代碼不會像編寫的那樣編譯 - 請發佈「Record」的真實代碼,或至少一個工作示例... –