//jsonをパースしてリストにする
        private void StoreItem(dynamic json, List<MylistListEntryViewModel> ret)
        {
            foreach(var entry in json) {

                NicoNicoMylistData data = new NicoNicoMylistData();
                data.CreateTime = UnixTime.FromUnixTime((long)entry.create_time).ToString();
                data.Description = entry.description;
                data.ItemId = entry.item_id;

                var item = entry.item_data;
                data.Title = HttpUtility.HtmlDecode(item.title);

                if(entry.item_type is string) {

                    data.Type = int.Parse(entry.item_type);
                } else if(entry.item_type is double) {

                    data.Type = (int)entry.item_type;
                }

                //動画
                if(data.Type == 0) {

                    data.UpdateTime = UnixTime.FromUnixTime((long)item.update_time).ToString();
                    data.FirstRetrieve = UnixTime.FromUnixTime((long)item.first_retrieve).ToString();
                    data.Length = NicoNicoUtil.ConvertTime(long.Parse(item.length_seconds));
                    data.Id = item.video_id;
                    data.ViewCounter = int.Parse(item.view_counter);
                    data.CommentCounter = int.Parse(item.num_res);
                    data.MylistCounter = int.Parse(item.mylist_counter);
                    data.ThumbNailUrl = item.thumbnail_url;

                } else if(data.Type == 5) { //静画

                    data.UpdateTime = UnixTime.FromUnixTime((long)item.update_time).ToString();
                    data.FirstRetrieve = UnixTime.FromUnixTime((long)item.create_time).ToString();
                    data.Id = item.id.ToString();
                    data.ViewCounter = (int)item.view_count;
                    data.CommentCounter = (int)item.comment_count;
                    data.MylistCounter = (int)item.mylist_count;
                    data.ThumbNailUrl = item.thumbnail_url;

                } else if(data.Type == 6) { //書籍

                    data.UpdateTime = UnixTime.FromUnixTime((long)entry.update_time).ToString();
                    data.FirstRetrieve = UnixTime.FromUnixTime((long)item.released_at).ToString();
                    data.Id = "bk" + item.id;
                    data.ViewCounter = (int)item.view_count;
                    data.CommentCounter = (int)item.comment_count;
                    data.MylistCounter = (int)item.mylist_count;
                    data.ThumbNailUrl = item.thumbnail;

                } else if(data.Type == 13) { //ブロマガ

                    data.UpdateTime = UnixTime.FromUnixTime((long)item.commented_time).ToString();
                    data.FirstRetrieve = UnixTime.FromUnixTime((long)item.create_time).ToString();
                    data.Id = "ar" + item.id;
                    data.CommentCounter = (int)item.comment_count;
                    data.MylistCounter = int.Parse(item.mylist_count);
                    data.ThumbNailUrl = item.thumbnail_url;
                }
                ret.Add(new MylistListEntryViewModel(data));
            }
        }
 public MylistListEntryViewModel(MylistListViewModel vm, NicoNicoMylistData data)
 {
     Owner = vm;
     Entry = data;
 }
 public MylistListEntryViewModel(NicoNicoMylistData data)
 {
     Entry = data;
 }
Esempio n. 4
0
        //jsonをパースしてリストにする
        private void StoreItem(dynamic json, List <NicoNicoMylistData> ret)
        {
            foreach (var entry in json.mylistitem)
            {
                NicoNicoMylistData data = new NicoNicoMylistData();
                data.CreateTime  = UnixTime.FromUnixTime((long)entry.create_time).ToString();
                data.Description = entry.description;
                data.ItemId      = entry.item_id;

                var item = entry.item_data;
                data.Title = HttpUtility.HtmlDecode(item.title);

                if (entry.item_type is string)
                {
                    data.Type = int.Parse(entry.item_type);
                }
                else if (entry.item_type is double)
                {
                    data.Type = (int)entry.item_type;
                }

                //動画
                if (data.Type == 0)
                {
                    data.UpdateTime     = UnixTime.FromUnixTime((long)item.update_time).ToString();
                    data.FirstRetrieve  = UnixTime.FromUnixTime((long)item.first_retrieve).ToString();
                    data.Length         = NicoNicoUtil.ConvertTime(long.Parse(item.length_seconds));
                    data.Id             = item.video_id;
                    data.ViewCounter    = int.Parse(item.view_counter);
                    data.CommentCounter = int.Parse(item.num_res);
                    data.MylistCounter  = int.Parse(item.mylist_counter);
                    data.ThumbNailUrl   = item.thumbnail_url;
                }
                else if (data.Type == 5)    //静画

                {
                    data.UpdateTime     = UnixTime.FromUnixTime((long)item.update_time).ToString();
                    data.FirstRetrieve  = UnixTime.FromUnixTime((long)item.create_time).ToString();
                    data.Id             = item.id.ToString();
                    data.ViewCounter    = (int)item.view_count;
                    data.CommentCounter = (int)item.comment_count;
                    data.MylistCounter  = (int)item.mylist_count;
                    data.ThumbNailUrl   = item.thumbnail_url;
                }
                else if (data.Type == 6)    //書籍

                {
                    data.UpdateTime     = UnixTime.FromUnixTime((long)entry.update_time).ToString();
                    data.FirstRetrieve  = UnixTime.FromUnixTime((long)item.released_at).ToString();
                    data.Id             = "bk" + item.id;
                    data.ViewCounter    = (int)item.view_count;
                    data.CommentCounter = (int)item.comment_count;
                    data.MylistCounter  = (int)item.mylist_count;
                    data.ThumbNailUrl   = item.thumbnail;
                }
                else if (data.Type == 13)    //ブロマガ

                {
                    data.UpdateTime     = UnixTime.FromUnixTime((long)item.commented_time).ToString();
                    data.FirstRetrieve  = UnixTime.FromUnixTime((long)item.create_time).ToString();
                    data.Id             = "ar" + item.id;
                    data.CommentCounter = (int)item.comment_count;
                    data.MylistCounter  = int.Parse(item.mylist_count);
                    data.ThumbNailUrl   = item.thumbnail_url;
                }
                ret.Add(data);
            }
        }