首页 > 解决方案 > 无法使用 .net 核心将类转换为 System.Linq.IQueryable

问题描述

在这里,我有一堂课:

  public class AccessinfoDetails 
{
    public IEnumerable<TurbineDvce> Devices { get; set; }
    public TixiModem TixiModem { get; set; }
}

我有一个这样定义的接口:

  public IQueryable<AccessinfoDetails> Devices(string id);

对于接口的实现:

    public IQueryable<AccessinfoDetails> Devices(string id){

      AccessinfoDetails result = new AccessinfoDetails()
        {
            Devices = distinct,
            TixiModem = tixiModem
        };

        return  result;}

但我收到一条错误消息,说它无法将 AcessInfoDeatils 转换为 system.linq.iquerable,这是正确的,但我该如何修复它,这是将数据传递给我的 API 控制器的正确方法吗?

标签: c#asp.net-core

解决方案


这应该可行,将您的返回线更改为如下所示:

return  new [] {result}.AsQuerable();

或者正如 Rufus L 在评论中指出的使用列表而不是数组的类型化版本:

return new List<AccessinfoDetails> { result }.AsQueryable();

推荐阅读