检索列表中的字段值

时间:2013-10-29 23:15:18

标签: c# list windows-phone-8 wunderground

我有“警报”类,其中包含来自Wunderground API的一些返回信息。然后我在“警报”,“警报”中有另一个班级。我的代码如下所示:

public class Alerts
{
    public class Features
    {
        public int alerts { get; set; }
    }

    public class Response
    {
        public string version { get; set; }
        public string termsofService { get; set; }
        public Features features { get; set; }
    }

    public class ZONED
    {
        public string state { get; set; }
        public string ZONE { get; set; }
    }

    public class StormBased
    {
    }

    public class Alert
    {
        public string type { get; set; }
        public string description { get; set; }
        public string date { get; set; }
        public string date_epoch { get; set; }
        public string expires { get; set; }
        public string expires_epoch { get; set; }
        public string message { get; set; }
        public string phenomena { get; set; }
        public string significance { get; set; }
        public List<ZONED> ZONES { get; set; }
        public StormBased StormBased { get; set; }
    }

    public class RootObject
    {
        public Response response { get; set; }
        public string query_zone { get; set; }
        public List<Alert> alerts { get; set; }
    }
    public class AlertsUpdateState
    {
        public HttpWebRequest AsyncRequest { get; set; }
        public HttpWebResponse AsyncResponse { get; set; }
    }
}

我在应用程序启动时创建一个RootObject,稍后使用JSON清空值。该调用返回“response”,“query_zone”和“alerts”。现在最后一个是类型为Alert的List,其中包含已发出警报的类型,描述等。

所以我把这个列表存储为alertVar。这有几种方法,包括计数。我可以弄清楚发出了多少警报,但我不确定如何继续。

如何使用此列表检索字符串值(例如类型)?

2 个答案:

答案 0 :(得分:0)

假设alertVarAlert的列表,您可以执行以下操作:

string some_string;
foreach (var alert in alertVar) 
{
    some_string += alert.type + ", ";
}

这会将所有类型添加到长字符串(some_string)。 你可以为你想要的任何一个属性做同样的事情......

答案 1 :(得分:0)

foreach (var alert in alerts) 
{
   var type = alert.type;
   var description = alert.description
}

这是您如何使用正在循环的项目的基本示例。