相关疑难解决方法(0)

UnauthorizedAccessException:Silverlight应用程序中的无线跨线程访问(XAML/C#)

相对较新的C#,并希望尝试使用它的一些第三方Web服务API.

这是XAML代码

    <Grid x:Name="ContentGrid" Grid.Row="1">
        <StackPanel>
            <Button Content="Load Data" Click="Button_Click" />
            <TextBlock x:Name="TwitterPost" Text="Here I am"/>
        </StackPanel>
    </Grid>
Run Code Online (Sandbox Code Playgroud)

这是C#代码

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://api.twitter.com/1/users/show/keykoo.xml");
        request.Method = "GET";

        request.BeginGetResponse(new AsyncCallback(twitterCallback), request);
    }

    private void twitterCallback(IAsyncResult result)
    {
        HttpWebRequest request = (HttpWebRequest)result.AsyncState;
        HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(result);
        TextReader reader = new StreamReader(response.GetResponseStream());
        string strResponse = reader.ReadToEnd();

        Console.WriteLine("I am done here");
        TwitterPost.Text = "hello there";
    }
Run Code Online (Sandbox Code Playgroud)

我猜这是因为回调在一个单独的线程上执行而不是UI?在C#中处理这些类型的交互的正常流程是什么?

谢谢.

c# silverlight

12
推荐指数
2
解决办法
2万
查看次数

标签 统计

c# ×1

silverlight ×1