public static List<Metadata> GetAllMetadataDatasetsByValue(List<Metadata> data, string value) { List<Metadata> newData = new List<Metadata>(); foreach (Metadata m in data) { if(m.IsValueInMetadata(value))newData.Add(m); } return newData; }