本文整理汇总了C#中IWebAgent类的典型用法代码示例。如果您正苦于以下问题:C# IWebAgent类的具体用法?C# IWebAgent怎么用?C# IWebAgent使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
IWebAgent类属于命名空间,在下文中一共展示了IWebAgent类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RedditUser
public RedditUser(Reddit reddit, JToken json, IWebAgent webAgent)
: base(json)
{
Reddit = reddit;
WebAgent = webAgent;
JsonConvert.PopulateObject(json["data"].ToString(), this, reddit.JsonSerializerSettings);
}
示例2: Post
public Post(Reddit reddit, JToken post, IWebAgent webAgent)
: base(reddit, webAgent, post)
{
Reddit = reddit;
WebAgent = webAgent;
JsonConvert.PopulateObject(post["data"].ToString(), this, reddit.JsonSerializerSettings);
}
示例3: VotableThing
public VotableThing(Reddit reddit, IWebAgent webAgent, JToken json)
: base(reddit, json)
{
Reddit = reddit;
WebAgent = webAgent;
JsonConvert.PopulateObject(json["data"].ToString(), this, Reddit.JsonSerializerSettings);
}
示例4: Comment
public Comment(Reddit reddit, JToken json, IWebAgent webAgent, Thing sender)
: base(reddit, webAgent, json)
{
var data = json["data"];
JsonConvert.PopulateObject(data.ToString(), this, reddit.JsonSerializerSettings);
Reddit = reddit;
WebAgent = webAgent;
// Parse sub comments
// TODO: Consider deserializing this properly
var subComments = new List<Comment>();
if (data["replies"] != null && data["replies"].Any())
{
foreach (var comment in data["replies"]["data"]["children"])
subComments.Add(new Comment(reddit, comment, webAgent, sender));
}
Comments = subComments.ToArray();
this.Parent = sender;
// Handle Reddit's API being horrible
if (data["context"] != null)
{
var context = data["context"].Value<string>();
LinkId = context.Split('/')[4];
}
}
示例5: InitAsync
public async new Task<AuthenticatedUser> InitAsync(Reddit reddit, JToken json, IWebAgent webAgent)
{
CommonInit(reddit, json, webAgent);
await Task.Factory.StartNew(() => JsonConvert.PopulateObject(json["name"] == null ? json["data"].ToString() : json.ToString(), this,
reddit.JsonSerializerSettings));
return this;
}
示例6: Init
public new AuthenticatedUser Init(Reddit reddit, JToken json, IWebAgent webAgent)
{
CommonInit(reddit, json, webAgent);
JsonConvert.PopulateObject(json["name"] == null ? json["data"].ToString() : json.ToString(), this,
reddit.JsonSerializerSettings);
return this;
}
示例7: AuthProvider
/// <summary>
/// Allows use of reddit's OAuth interface, using an app set up at https://ssl.reddit.com/prefs/apps/.
/// </summary>
/// <param name="clientId">Granted by reddit as part of app.</param>
/// <param name="clientSecret">Granted by reddit as part of app.</param>
/// <param name="redirectUri">Selected as part of app. Reddit will send users back here.</param>
/// <param name="agent">Implementation of IWebAgent to use to make requests.</param>
public AuthProvider(string clientId, string clientSecret, string redirectUri, IWebAgent agent)
{
_clientId = clientId;
_clientSecret = clientSecret;
_redirectUri = redirectUri;
_webAgent = agent;
}
示例8: InitAsync
public async Task<RedditUser> InitAsync(Reddit reddit, JToken json, IWebAgent webAgent)
{
CommonInit(reddit, json, webAgent);
await JsonConvert.PopulateObjectAsync(json["name"] == null ? json["data"].ToString() : json.ToString(), this,
reddit.JsonSerializerSettings);
return this;
}
示例9: Init
public Comment Init(Reddit reddit, JToken json, IWebAgent webAgent, Thing sender)
{
var data = CommonInit(reddit, json, webAgent, sender);
ParseComments(reddit, json, webAgent, sender);
JsonConvert.PopulateObject(data.ToString(), this, reddit.JsonSerializerSettings);
return this;
}
示例10: InitAsync
public async Task<Comment> InitAsync(Reddit reddit, JToken json, IWebAgent webAgent, Thing sender)
{
var data = CommonInit(reddit, json, webAgent, sender);
await ParseCommentsAsync(reddit, json, webAgent, sender);
await Task.Factory.StartNew(() => JsonConvert.PopulateObject(data.ToString(), this, reddit.JsonSerializerSettings));
return this;
}
示例11: WikiPageSettings
protected internal WikiPageSettings(Reddit reddit, JToken json, IWebAgent webAgent)
{
var editors = json["editors"].ToArray();
Editors = editors.Select(x =>
{
return new RedditUser(reddit, x, webAgent);
});
JsonConvert.PopulateObject(json.ToString(), this, reddit.JsonSerializerSettings);
}
示例12: SubredditImage
public SubredditImage(Reddit reddit, SubredditStyle subredditStyle,
string cssLink, string name, IWebAgent webAgent)
{
Reddit = reddit;
WebAgent = webAgent;
SubredditStyle = subredditStyle;
Name = name;
CssLink = cssLink;
}
示例13: SubredditStyle
public SubredditStyle(Reddit reddit, Subreddit subreddit, JToken json, IWebAgent webAgent) : this(reddit, subreddit, webAgent)
{
Images = new List<SubredditImage>();
var data = json["data"];
CSS = HttpUtility.HtmlDecode(data["stylesheet"].Value<string>());
foreach (var image in data["images"])
{
Images.Add(new SubredditImage(
Reddit, this, image["link"].Value<string>(),
image["name"].Value<string>(), image["url"].Value<string>(), WebAgent));
}
}
示例14: ParseCommentsAsync
private async Task ParseCommentsAsync(Reddit reddit, JToken data, IWebAgent webAgent, Thing sender)
{
// Parse sub comments
// TODO: Consider deserializing this properly
var subComments = new List<Comment>();
if (data["replies"] != null && data["replies"].Any())
{
foreach (var comment in data["replies"]["data"]["children"])
subComments.Add(await new Comment().InitAsync(reddit, comment, webAgent, sender));
}
Comments = subComments.ToArray();
}
示例15: ParseCommentsAsync
private async Task ParseCommentsAsync(Reddit reddit, JToken data, IWebAgent webAgent, Thing sender)
{
// Parse sub comments
var replies = data["data"]["replies"];
var subComments = new List<Comment>();
if (replies != null && replies.Count() > 0)
{
foreach (var comment in replies["data"]["children"])
subComments.Add(await new Comment().InitAsync(reddit, comment, webAgent, sender));
}
Comments = subComments.ToArray();
}