- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
好吧,我最近升级到 V3,但它破坏了很多东西
我该如何解决这些问题?
1 号:
这不再有效,因为没有像 Credentials 和 InMemoryCredentials 这样的定义
var auth = new SingleUserAuthorizer
{
Credentials = new InMemoryCredentials
{
ConsumerKey = srtwitterConsumerKey,
ConsumerSecret = srtwitterConsumerSecret,
OAuthToken = srtwitterOAuthToken,
AccessToken = srtwitterAccessToken
}
};
第 2 点:不再有 GetFileBytes 的定义
var mediaItems =
new List<Media>
{
new Media
{
Data = Utilities.GetFileBytes(srImageUrl),
FileName = srTweet.Split(' ')[0]+".jpg",
ContentType = MediaContentType.Jpeg
}
};
第 3 点:TweetWithMedia 没有定义
var tweet = twitterContext.TweetWithMedia(srTweet, false, mediaItems);
第 4 点:没有定义 UpdateStatus
var tweet = twitterContext.UpdateStatus(srTweet);
第 5 点:没有 CreateFavorite 的定义
var vrResult = twitterContext.CreateFavorite(srRetweetId);
而且我找不到 V3 的任何示例
它总是说 twitterCtx
但你如何首先获得 twitterCtx
?
最佳答案
LINQ to Twitter v3.0 是异步的,这意味着命名约定以及调用某些代码的方式都发生了变化。一些更改是为了一致性或改进跨平台操作。它还是一个可移植类库 (PCL),允许它在多个平台上运行。以下是您的一些问题的简要概述:
试试这个:
var auth = new SingleUserAuthorizer
{
CredentialStore = new SingleUserInMemoryCredentialStore
{
ConsumerKey = ConfigurationManager.AppSettings["consumerKey"],
ConsumerSecret = ConfigurationManager.AppSettings["consumerSecret"],
AccessToken = ConfigurationManager.AppSettings["accessToken"],
AccessTokenSecret = ConfigurationManager.AppSettings["accessTokenSecret"]
}
};
以前的 GetFileBytes 实现存在跨平台问题,因此我将其删除。您必须编写自己的代码来读取文件的字节。这是旧的实现:
/// <summary>
/// Reads a file into a byte array
/// </summary>
/// <param name="filePath">Full path of file to read.</param>
/// <returns>Byte array with file contents.</returns>
public static byte[] GetFileBytes(string filePath)
{
byte[] fileBytes = null;
using (var fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read))
using (var memStr = new MemoryStream())
{
byte[] buffer = new byte[4096];
memStr.Position = 0;
int bytesRead = 0;
while ((bytesRead = fileStream.Read(buffer, 0, buffer.Length)) != 0)
{
memStr.Write(buffer, 0, bytesRead);
}
memStr.Position = 0;
fileBytes = memStr.GetBuffer();
}
return fileBytes;
}
这是 TweetWithMediaAsync 重载之一:
Status tweet = await twitterCtx.TweetWithMediaAsync(
status, PossiblySensitive, Latitude, Longitude,
PlaceID, DisplayCoordinates, imageBytes);
现在称为 TweetAsync:
var tweet = await twitterCtx.TweetAsync(status);
下面是 CreateFavoriteAsync 的示例:
var status = await twitterCtx.CreateFavoriteAsync(401033367283453953ul);
您必须实例化 TwitterContext - 这是一个示例:
var twitterCtx = new TwitterContext(auth);
有关更多信息,您可以下载源代码并查看多种技术的工作示例。示例项目名称具有 Linq2TwitterDemos_ 前缀:
https://linqtotwitter.codeplex.com/SourceControl/latest#ReadMe.txt
每个 API 调用都有文档记录,以及有关 LINQ to Twitter 其他方面的文档:
关于c# - 如何使用linqtotwitter V3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22565820/
我正在使用 LinqToTwitter (http://linqtotwitter.codeplex.com/),但是 我不知道从哪里开始授权。到目前为止,我有这个: var oAuth = new
我有一个 Web 应用程序,其中任何用户如果选择社交媒体自动化,例如 twitter,他们单击 twitter 按钮并完成 oauth 程序。该 oauth 过程是使用 php 完成的。 我将该特定用
我的 LinqToTwitter 类无法排除转发。 var srch = (from search in twitterCtx.Search where search.Type == SearchTy
我想知道是否可以使用代理将 twitter 与 LinqToTwitter (c#) 库连接起来。目的是隐藏ip源。 最佳答案 我刚刚浏览了 LinqToTwitter 库 source code h
我正在尝试让所有推文(计算推文总数)都属于主题标签。我的功能在这里,如何使用 maxID 和 sinceID 获取所有推文。什么是而不是“计数”?我不知道。 if (maxid != null)
我正在尝试使用 linqtotwitter 查看经过身份验证的用户的所有私有(private)列表。然而,这只显示了一个私有(private)列表,即使列表中还有另外 18 个。它似乎是随机选择了这个
我几乎阅读了 LinqToTwitter 中所有带有代码示例的帖子 documentation .我想获取 UserID 或用户的 ScreenName 以便为登录的用户进行这样的调用。 var fr
我最近从 TweetSharp 切换到 LinqToTwitter,我缺少的一件事是一种将推文检索为 HTML 的方法。 TweetSharp 有一个名为 .TextAsHtml() 的方法,它会自动
我正在尝试使用 LinqToTwitter nuget 插件 (v3.1.2) 将 twitter 集成添加到现有的 MVC4 应用程序中,并遵循文档 here Imports LinqToTwitt
如何在 MVC 项目上使用 linqtotwitter 搜索推文,并将其从控制台转换为 MVC。 var searchResponse = await
在我的网站 .Net Framework 4.8 中,当我从 LinqToTwitter v5.1.1 更新到 5.1.2 时,当我尝试创建 AspNetAuthorizer 的新实例时收到一条错误消
我是一名优秀的程序员,十分优秀!