Windows phone 定期代理-在预约时等待searchasync
我正在表演一场音乐会Windows phone 定期代理-在预约时等待searchasync,windows-phone,Windows Phone,我正在表演一场音乐会 appts.SearchAsync 在 在“期刊代理”中。 问题是在期刊代理方面。searchasync及其嵌套函数以前从未完成过 NotifyComplete(); } 请您帮助我如何等待这里正在进行的所有呼叫: static void Appointments_SearchCompleted(object sender, AppointmentsSearchEventArgs e) { try
appts.SearchAsync
在
在“期刊代理”中。
问题是在期刊代理方面。searchasync及其嵌套函数以前从未完成过
NotifyComplete();
}
请您帮助我如何等待这里正在进行的所有呼叫:
static void Appointments_SearchCompleted(object sender, AppointmentsSearchEventArgs e)
{
try
{
UpdatePrimaryTile(e.Results
.Where(a => a.Subject != null)
.OrderBy(a => a.StartTime)
.ToList());
}
catch (System.Exception)
{
}
}
public static void UpdatePrimaryTile(List<Appointment> calendarItems)
{
...........
..........
}
静态无效约会\u搜索已完成(对象发送者、约会搜索者)
{
尝试
{
UpdatePrimaryTile(如结果
.Where(a=>a.Subject!=null)
.OrderBy(a=>a.StartTime)
.ToList());
}
捕获(系统异常)
{
}
}
公共静态void UpdatePrimaryTile(列出日历项)
{
...........
..........
}
在调用“NotifyComplete”之前
谢谢大家!
Jakub您可以使用wait关键字等待异步操作完成
await appts.SearchAsync
另一个选项-拥有一个在异步调用完成之前一直处于休眠状态的循环
appts.SearchAsync
while (true)
{
if (searchCompleted)
{
break;
}
else
{
Thread.Sleep(100);
}
}
然后在事件处理程序中
void Appointments_SearchCompleted(object sender, AppointmentsSearchEventArgs e)
{
searchCompleted = true;
// Other logic
}
虽然这是一个很好的问题,但开发问题应该在堆栈溢出时提出@caschw是正确的。我将转移你的问题。
void Appointments_SearchCompleted(object sender, AppointmentsSearchEventArgs e)
{
searchCompleted = true;
// Other logic
}