-4

我有这个查询:

public static class myClass
{ 

    list<something> myList = new list<something>();

    public void PopulateList()
    {
        var myQuery = from a in db.something
              where a.someproperty == somevar
              select a;   

        myList  = myQuery.Tolist();
    }
}

我该怎么做才能使这个查询异步?

4

2 回答 2

3

穷人的异步/等待

await Task.Factory.StartNew(() => PopulateList());

编辑

对于那些想看看它的用法的人

我怎样才能一个接一个地发送电子邮件? 及其后续问题

我如何使它只发送一次电子邮件?

于 2013-08-19T20:41:38.523 回答
-2

实际上更有效的异步返回将是:

await Task.FromResult(PopulateList());

此代码返回已完成的任务,该任务针对需要将同步代码转换为异步的方法进行了优化。

您还需要将返回类型从 void 更改为 Task。

资料来源:aspConf 2012上的 ASP.NET中的异步

于 2013-12-09T15:45:24.777 回答