加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 将json twitter字符串反序列化为对象

发布时间:2020-12-16 01:56:52 所属栏目:百科 来源:网络整理
导读:使用下面的URL我试图拉动一个特定的屏幕名称有效的追随者.当我尝试将代码反序列化为一个ojbect时,我会在下面找到任何想法的错误消息.我也把代码用于Json类型..我想获得位置归档.我已经发布用户本身就是一个对象.所以我可以得到一个例子,它将让我对初始对象进
使用下面的URL我试图拉动一个特定的屏幕名称有效的追随者.当我尝试将代码反序列化为一个ojbect时,我会在下面找到任何想法的错误消息.我也把代码用于Json类型..我想获得位置归档.我已经发布用户本身就是一个对象.所以我可以得到一个例子,它将让我对初始对象进行脱盐,然后将对象放入其中.

URL =“https://api.twitter.com/1.1/followers/list.json?u0026amp;screen_name=”will insert here”

反序列化为objec代码

var result = JsonConvert.DeserializeObject<List>(FollowerData)

Json类型代码

public class Follower
{

[JsonProperty("created_at")]
public string CreatedAt { get; set; }

[JsonProperty("id")]
public string Id { get; set; }

[JsonProperty("id_str")]
public string IdStr { get; set; }

[JsonProperty("name")]
public string Name { get; set; }

[JsonProperty("screen_name")]
public string ScreenName { get; set; }

[JsonProperty("location")]
public bool Location { get; set; }

[JsonProperty("description")]
public string Description { get; set; }

}

错误信息

{“Cannot deserialize the current JSON object (e.g.
{”name”:”value”}) into type
‘System.Collections.Generic.List`1[OAuthTwitterWrapper.JsonTypes.FollowerUsers]’
because the type requires a JSON array (e.g. [1,2,3]) to deserialize
correctly.rnTo fix this error either change the JSON to a JSON array
(e.g. [1,3]) or change the deserialized type so that it is a normal
.NET type (e.g. not a primitive type like integer,not a collection
type like an array or List) that can be deserialized from a JSON
object. JsonObjectAttribute can also be added to the type to force it
to deserialize from a JSON object.rnPath ‘users’,line 1,position
9.”}

Json String Examplt

{
    "users": [
        {
            "id": 219566993,"id_str": "219566993","name": "belenastorgano","screen_name": "anna_belenn_","location": "CapitalFederal,Argentina","description": "Mesientonomade,todavu00edanotengounlugarfijodondevivir.-","url": null,"entities": {
                "description": {
                    "urls": []
                }
            },"protected": true,"followers_count": 44,"friends_count": 64,"listed_count": 0,"created_at": "ThuNov2506: 28: 12+00002010","favourites_count": 1,"utc_offset": -10800,"time_zone": "BuenosAires","geo_enabled": true,"verified": false,"statuses_count": 207,"lang": "es","contributors_enabled": false,"is_translator": false,"profile_background_color": "599E92","profile_background_image_url": "http: //a0.twimg.com/images/themes/theme18/bg.gif","profile_background_image_url_https": "https: //si0.twimg.com/images/themes/theme18/bg.gif","profile_background_tile": false,"profile_image_url": "http: //a0.twimg.com/profile_images/378800000326157070/e91b8fd8e12eda0a7fa350dcd286c56a_normal.jpeg","profile_image_url_https": "https: //si0.twimg.com/profile_images/378800000326157070/e91b8fd8e12eda0a7fa350dcd286c56a_normal.jpeg","profile_link_color": "E05365","profile_sidebar_border_color": "EEEEEE","profile_sidebar_fill_color": "F6F6F6","profile_text_color": "333333","profile_use_background_image": true,"default_profile": false,"default_profile_image": false,"following": null,"follow_request_sent": null,"notifications": null
        }
    ],"next_cursor": 1443863551966642400,"next_cursor_str": "1443863551966642309","previous_cursor": 0,"previous_cursor_str": "0"
}

解决方法

the only field i need is the location in the user table

你不需要任何类来从你的json中获取一些字段.只是利用动态

dynamic dynObj = JsonConvert.DeserializeObject(json); 
Console.WriteLine(dynObj.users[0].location);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读