我正在用用户名和密码调用此静态登录方法。我希望它等待直到下载字符串同步完成。对于我这个吓人的生活,我无法让它等待。如何使回拨呼叫等待异步完成c#
我试过老校友
while(wc.IsBusy){} //Which froze
也尝试了各种异步废话说didnt甚至编译
public static dbObj Login(String username, String password)
{
dbObj ret = new dbObj();
String rawWebReturn = "";
ret.propBag.Add(_BAGTYPE,returnTypes.Login.ToString());
DateTime date = DateTime.Now;
WebClient wc = new WebClient();
wc.DownloadStringAsync(new Uri(baseLoginURI + "uname=" + username + "&pword=" + password + "&date=" + date.ToString()));
wc.DownloadStringCompleted += (s,e) => {
if(e.Error!=null)
rawWebReturn = e.Error.Message;
else
rawWebReturn = e.Result;
};
return parseWebReturn(rawWebReturn,ret);
}
如果你希望它是同步的,为什么不直接调用同步方法'DownloadString'? –
因为它不存在于Windows手机。 –
感谢您澄清平台。这告诉你一些事情。你不应该试图阻止。 –