最近在使用webrequest的时候,发现一个问题,就是当我在远程调用返回值的时候,总是返回为空,
百思不得其解,最后发现,每次直接读到返回流的时候,总是返回为空,就用线程异步进行了 *** 作,果然成了。
private delegate voID dispatcherInvoke(string param);
voID ResponseReady(IAsyncResult asyncResult)
{
WebRequest request = asyncResult.AsyncState as WebRequest;
WebResponse response = request.EndGetResponse(asyncResult);
using (Stream responseStream = response.GetResponseStream()) { StreamReader reader = new StreamReader(responseStream); // lblPrice.Text = "价格:" + reader.ReadToEnd(); //异步马上执行返回,这样才能返回值 ,要不然会产生等待。 lblPrice.dispatcher.BeginInvoke((dispatcherInvoke)ShowResult,reader.ReadToEnd()); } } voID ShowResult(string result) { lblPrice.Text = "价格:" + result; }
总结以上是内存溢出为你收集整理的silverlight bate2 对webrequest的使用全部内容,希望文章能够帮你解决silverlight bate2 对webrequest的使用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)