コード例 #1
0
        public static VKAttachment Deserialize(object attachment)
        {
            var    data = (Dictionary <string, object>)attachment;
            var    _atachment = new VKAttachment();
            object type, audio, photo, poll, doc, link, wall, note, Page;

            if (data.TryGetValue("type", out type))
            {
                _atachment.type = (string)type;
            }
            if (data.TryGetValue("audio", out audio))
            {
                _atachment.audio = VKAudio.Deserialize(audio);
            }
            if (data.TryGetValue("photo", out photo))
            {
                _atachment.photo = VKPhoto.Deserialize(photo);
            }
            if (data.TryGetValue("poll", out poll))
            {
                _atachment.poll = VKPoll.Deserialize(poll);
            }
            if (data.TryGetValue("doc", out doc))
            {
                _atachment.doc = VKDocument.Deserialize(doc);
            }
            if (data.TryGetValue("link", out link))
            {
                _atachment.link = VKLink.Deserialize(link);
            }
            if (data.TryGetValue("wall", out wall))
            {
                _atachment.wall = VKWallPost.Deserialize(wall);
            }
            if (data.TryGetValue("note", out note))
            {
                _atachment.note = VKNote.Deserialize(note);
            }
            if (data.TryGetValue("Page", out Page))
            {
                _atachment.Page = VKPage.Deserialize(Page);
            }
            return(_atachment);
        }
コード例 #2
0
        public static VKWallPost Deserialize(object WallPost)
        {
            var _post = new VKWallPost();
            var data  = (Dictionary <string, object>)WallPost;

            object id, owner_id, from_id, date, text, reply_owner_id, reply_post_id, friends_only;


            if (data.TryGetValue("id", out id))
            {
                _post.id = (long)id;
            }
            if (data.TryGetValue("owner_id", out owner_id))
            {
                _post.owner_id = (long)owner_id;
            }
            if (data.TryGetValue("from_id", out from_id))
            {
                _post.from_id = (long)from_id;
            }
            if (data.TryGetValue("date", out date))
            {
                _post.date = (long)date;
            }
            if (data.TryGetValue("text", out text))
            {
                _post.text = (string)text;
            }
            if (data.TryGetValue("reply_owner_id", out reply_owner_id))
            {
                _post.reply_owner_id = (long)reply_owner_id;
            }
            if (data.TryGetValue("reply_post_id", out reply_post_id))
            {
                _post.reply_post_id = (long)reply_post_id;
            }
            if (data.TryGetValue("friends_only", out friends_only))
            {
                _post.friends_only = (int)(long)friends_only;
            }

            object comments, likes, reposts, post_type, post_source, attachments, geo;

            if (data.TryGetValue("comments", out comments))
            {
                _post.comments = VKComments.Deserialize(comments);
            }
            if (data.TryGetValue("likes", out likes))
            {
                _post.likes = VKLikes.Deserialize(likes);
            }
            if (data.TryGetValue("reposts", out reposts))
            {
                _post.reposts = VKReposts.Deserialize(reposts);
            }
            if (data.TryGetValue("post_type", out post_type))
            {
                _post.post_type = (string)post_type;
            }
            if (data.TryGetValue("post_source", out post_source))
            {
                _post.post_source = VKPostSource.Deserialize(post_source);
            }
            if (data.TryGetValue("attachments", out attachments))
            {
                var _att = new List <VKAttachment>();
                foreach (var a in (List <object>)attachments)
                {
                    _att.Add(VKAttachment.Deserialize(a));
                }
                _post.attachments = _att;
            }
            if (data.TryGetValue("geo", out geo))
            {
                _post.geo = VKGeo.Deserialize(geo);
            }

            object signer_id, copy_history, can_pin, is_pinned;

            if (data.TryGetValue("signer_id", out signer_id))
            {
                _post.signer_id = (long)signer_id;
            }
            if (data.TryGetValue("copy_history", out copy_history))
            {
                var h = new List <VKWallPost>();
                foreach (var h1 in (List <object>)copy_history)
                {
                    h.Add(VKWallPost.Deserialize(h1));
                }
                _post.copy_history = h;
            }

            if (data.TryGetValue("can_pin", out can_pin))
            {
                _post.can_pin = (int)(long)can_pin;
            }
            if (data.TryGetValue("is_pinned", out is_pinned))
            {
                _post.is_pinned = (int)(long)is_pinned;
            }

            return(_post);
        }
コード例 #3
0
ファイル: VKWallPost.cs プロジェクト: kelleygunner/arfighting
        public static VKWallPost Deserialize(object WallPost)
        {
            var _post=new VKWallPost();
            var data=(Dictionary<string,object>)WallPost;

            object id,owner_id,from_id,date,text,reply_owner_id,reply_post_id,friends_only;

            if(data.TryGetValue("id",out id))
                _post.id=(long)id;
            if(data.TryGetValue("owner_id",out owner_id))
                _post.owner_id=(long)owner_id;
            if(data.TryGetValue("from_id",out from_id))
                _post.from_id=(long)from_id;
            if(data.TryGetValue("date",out date))
                _post.date=(long)date;
            if(data.TryGetValue("text",out text))
                _post.text=(string)text;
            if(data.TryGetValue("reply_owner_id",out reply_owner_id))
                _post.reply_owner_id=(long)reply_owner_id;
            if(data.TryGetValue("reply_post_id",out reply_post_id))
                _post.reply_post_id=(long)reply_post_id;
            if(data.TryGetValue("friends_only",out friends_only))
                _post.friends_only=(int)(long)friends_only;

            object comments,likes,reposts,post_type,post_source,attachments,geo;

            if(data.TryGetValue("comments",out comments))
                _post.comments=VKComments.Deserialize(comments);
            if(data.TryGetValue("likes",out likes))
                _post.likes=VKLikes.Deserialize(likes);
            if(data.TryGetValue("reposts",out reposts))
                _post.reposts=VKReposts.Deserialize(reposts);
            if(data.TryGetValue("post_type",out post_type))
                _post.post_type=(string)post_type;
            if(data.TryGetValue("post_source",out post_source))
                _post.post_source=VKPostSource.Deserialize(post_source);
            if(data.TryGetValue("attachments",out attachments))
            {
                var _att=new List<VKAttachment>();
                foreach(var a in (List<object>)attachments)
                {
                    _att.Add(VKAttachment.Deserialize(a));
                }
                _post.attachments=_att;
            }
            if(data.TryGetValue("geo",out geo))
                _post.geo=VKGeo.Deserialize(geo);

            object signer_id,copy_history,can_pin,is_pinned;
            if(data.TryGetValue("signer_id",out signer_id))
                _post.signer_id=(long)signer_id;
            if(data.TryGetValue("copy_history",out copy_history))
            {
                var h=new List<VKWallPost>();
                foreach(var h1 in (List<object>)copy_history)
                {
                    h.Add(VKWallPost.Deserialize(h1));
                }
                _post.copy_history=h;
            }

            if(data.TryGetValue("can_pin",out can_pin))
                _post.can_pin=(int)(long)can_pin;
            if(data.TryGetValue("is_pinned",out is_pinned))
                _post.is_pinned=(int)(long)is_pinned;

            return _post;
        }