查询返回参数null异常

时间:2020-03-07 01:12:16

标签: c# linq

我有以下用于获取数据的方法

    public async Task<Mydata> GetMyData(int myId)
    {
        return await DbContext.Data
            .Where(x => x.ParentId == myId || x.ParentId == null) && 
            x.status != FileStatus.Testing && x.status != FileStatus.Commanding);
    }

我得到的只是下面的错误。这是错吗?

ArgumentNullException

'IQueryable<File>'不包含“ GetAwaiter”的定义,并且 没有可访问的扩展方法“ GetAwaiter”接受第一个 可以找到类型'IQueryable<Mydata>'的参数(您是否丢失了 using指令还是程序集引用?)

我该如何纠正?

1 个答案:

答案 0 :(得分:2)

这里不需要异步/等待,因为没有异步发生。方法中的代码似乎试图返回IQueryable之类的Mydata(无论DbContext.Data中的模型类型是什么)。因此,只需返回:

public IQueryable<Mydata> GetMyData(int myId)
{
    return DbContext.Data
        .Where(x => (x.ParentId == myId || x.ParentId == null) && 
        x.status != FileStatus.Testing && x.status != FileStatus.Commanding);
}

编辑:您的括号也不匹配,发布的代码无效。我已经匹配了括号,但是不能保证结果逻辑是否符合您的意图。调试可以帮助您缩小范围。

相关问题