无法使用Twitterizer Silverlight/Async进行Twitter调用



使用Twitterizer网站上的代码示例,我试图用以下代码向twitter发布推文:

        Dim asyncResult As IAsyncResult = TwitterStatusAsync.Update(
        tokens.Tokens,
        Tweet.Text,
        Nothing,
        Timeout,
        Function(updateResponse)
            If (updateResponse.Result = RequestResult.Success) Then
                MessageBox.Show("Tweet Posted")
            Else
                MessageBox.Show("Error: " & updateResponse.ErrorMessage)
            End If
        End Function)

但我得到了一个例外:

用户代码未处理System.NotSupportedException消息=不支持指定的方法。StackTrace:在System.Func 4.BeginInvoke(T1 arg1, T2 arg2, T3 arg3, AsyncCallback callback, Object object) at Twitterizer.AsyncUtility.ExecuteAsyncMethod[TResponse,TProperties](OAuthTokens tokens, String s, TProperties properties, TimeSpan timeout, Func 4 methodToCall,Action 1 function) at Twitterizer.TwitterStatusAsync.Update(OAuthTokens tokens, String text, StatusUpdateOptions options, TimeSpan timeout, Action 1函数)位于myFire_Silverlight_啁啾Status_Post(mf_object_tweet tweet)位于myFire_Silverlight.TweetDialog.OKButton_Click(对象发送器,RoutedEventArgs e)位于System.Windows.Controls.Primitives.ButtonBase.OnClick()位于System.Windows.Controls.Button.OnClick()位于System.Windows.Controls.Primities.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)在System.Windows.Controls.Control.OnMouseLeftButtonUp(Control ctrl,EventArgs e)位于MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj、IntPtr unmanagedObjArgs、Int32 argsTypeIndex、Int32 actualArgsTypeIndex,String eventName,UInt32标志)内部异常:

我做错了什么?

Ricky在Twitterizer.net上回复了我的表单帖子,他的帖子是:


我问了一个在图书馆那部分工作的人(我相信大部分都是这样),他是这么说的。。。

hrm,所以基本上是两个问题。。。1.Silverlight Async库的那部分不支持发布推文,我只有时间选择性地实现对Async库和2的SL支持。最近对源代码的更改(Henriks Async Helpers)已经从异步库中删除了所有SL支持,因为SL不支持Func.BeginInvoke.

因此,您可能需要使用非异步方法,并将它们放置在自己的异步事件处理程序中。(也就是说,如果我正确理解这个问题和他的回答。)

最新更新