EF5 IQueryable不包含ToListAsync

时间:2018-08-02 17:58:05

标签: c# asp.net-mvc vb.net visual-studio entity-framework

我有此代码,但我不知道我的代码有什么问题。 我有EF 5,我想制作一个Task await方法。

我想做的是选择查询一个简单的表,但以异步方式。 但是方法ToListAsync()似乎不在我的EF中。

我该如何解决?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using EO;
using System.Data.Objects;
using System.Data.Objects.SqlClient;
using System.Transactions;
using System.Threading;
using System.Data.Entity;

namespace DimexCEDatos
{
    static public class AfiliadosDatos
    {
        static List<myclass> lstSegmentos = new List<myclass>();

        public static async Task<List<myclass>> myfunction()
        {
            try
            {
                using (MyDB db = new MyDB())
                {
                    lstSegmentos = await (from item in db.genAfiliados
                                          select item).AsQueryable().ToListAsync();
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }

            return lstSegmentos;
        }
    }
}

1 个答案:

答案 0 :(得分:1)

我不太确定,但也许您可以使用以下扩展方法

public static class SampleExtension
{
    public static async Task<List<T>> ToListAsync<T> (this IQueryable<T> obj) => await Task.Run(() => obj.ToList());
}