我只想使用 Tweetsharp 将最新的推文发送到我的 Windows Phone 应用程序。以下是我所做的:
- 使用 Nuget 包管理器安装 Tweetsharp。
- 将我的应用注册到 Twitter 开发者网站。
- 获取消费者密钥、消费者秘密、令牌和令牌秘密。
- 使用这 4 个键初始化 TwitterService。
那么,下一步是什么?我上面的步骤有什么错误吗?我真的很困惑。
我只想使用 Tweetsharp 将最新的推文发送到我的 Windows Phone 应用程序。以下是我所做的:
那么,下一步是什么?我上面的步骤有什么错误吗?我真的很困惑。
wiki上提供了 tweetsharp 的文档。
最好的方法是statuses/user_timeline:
返回由 screen_name 或 user_id 参数指示的用户发布的最新推文的集合
你有所有的先决条件。让我们编码!
一块 Xaml
<!--ContentPanel - place additional content here-->
<Grid x:Name="ContentPanel" Grid.Row="1">
<Grid.Resources>
<DataTemplate x:Key="tweetList">
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" TextWrapping="Wrap" Text="{Binding Text}"/>
<TextBlock Grid.Row="1" HorizontalAlignment="Right" Text="{Binding CreatedDate}" FontSize="12" FontStyle="Italic"/>
</Grid>
</DataTemplate>
</Grid.Resources>
<TextBlock Text="Tweet List" FontSize="26" HorizontalAlignment="Center" Margin="10" />
<ListBox
Height="650"
Margin="0,20,0,0"
ScrollViewer.VerticalScrollBarVisibility="Visible"
ItemTemplate="{StaticResource tweetList}"
x:Name="tweetList">
</ListBox>
</Grid>
和一块 C#
// Constructor
public MainPage()
{
InitializeComponent();
this.Loaded += new RoutedEventHandler(MainPage_Loaded);
}
void MainPage_Loaded(object sender, RoutedEventArgs e)
{
var service = new TwitterService("yourconsumerKey", "yourconsumerSecret");
service.AuthenticateWith("youraccessToken", "youraccessTokenSecret");
service.ListTweetsOnUserTimeline(new ListTweetsOnUserTimelineOptions() { ScreenName = "SCREENNAME" }, (ts, rep) =>
{
if (rep.StatusCode == HttpStatusCode.OK)
{
//bind
this.Dispatcher.BeginInvoke(() => { tweetList.ItemsSource = ts; });
}
});
}
就这样 !