[英]Accessing property from a class of list
我試圖顯示 fieldValues 內的值。 哪些字段值包含“信息”和“錯誤”。 起初我做了一個簡單的Console.Writeline(fieldValues)
但我很快了解到這只是真正使用 List 的ToString()
實現,只是打印了我不想顯示的類型的名稱。 然后我嘗試創建一個 foreach 循環,因為屬性FieldLevel
是一個<FieldValue>
類型的列表,它包含一個包含“信息”和“錯誤”的字符串value
屬性。
model class:
public class LevelField
{
public string FieldName { get; set; }
public List<FieldValue> FieldValue { get; set; }
}
public class FieldValue
{
public string value { get; set; }
}
in my other class:
var fieldName = "";
List<FieldValue> fieldValues = new();
......
foreach (var y in x.BusinessProcessStep.LogDataSources)
{
fieldName = y.LogDataSource.LogFieldsMapping.LevelField.FieldName;
fieldValues = y.LogDataSource.LogFieldsMapping.LevelField.FieldValue;
}
foreach (var item in fieldValues.FirstOrDefault().value)
{
Console.WriteLine(item);
}
但是,在 fieldValues foreach 循環中,它只返回字母“I”而不是信息和錯誤。 有沒有特定的方法可以從 List FieldValue 調用屬性值?
請注意,您需要遍歷所有fieldValues
列表,而不僅僅是像您那樣遍歷第一項。
試試這個:
foreach (string item in fieldValues.Select(fv => fv.value))
{
Console.WriteLine(item);
}
或這個:
foreach (FieldValue item in fieldValues)
{
Console.WriteLine(item.value);
}
或者使用System.Linq
:
fieldValues.ForEach(fv => Console.WriteLine(fv.value));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.