如何将Tweetinvi的args.json转换为对象

时间:2014-05-01 07:28:30

标签: c# json twitter tweetinvi

我正在使用Tweetinvi来获取Twitter流,使用非常简单/友好但无法将Json解析为推文。任何人都可以帮我转换/解析args.Json到Tweet(使用Newtonsoft.json)吗?

filteredStream.JsonObjectReceived += (sender, args) =>
{
    var tweet = JsonConvert.DeserializeObject<Tweetinvi.Core.Interfaces.ITweet>(args.Json);
};

以上行最终会出现以下错误,因为ITweet是一个界面:

Could not create an instance of type Tweetinvi.Core.Interfaces.ITweet. Type is an interface or abstract class and cannot be instantiated

1 个答案:

答案 0 :(得分:2)

只需使用已实施的方法:

 fs.MatchingTweetReceived += (sender, args) => { var tweet = args.Tweet; };

如果您真的想自己进行Json转换,可以执行以下操作:

 var jsonConvert = TweetinviContainer.Resolve<IJsonObjectConverter>();
 var tweetDTO = jsonConvert.DeserializeObject<ITweetDTO>(json);
 var tweet = Tweet.GenerateTweetFromDTO(tweetDTO);