簡體   English   中英

ASP 核心 3.1 API 與 EF 核心 5.0

[英]ASP Core 3.1 API with EF Core 5.0

我對EF core 5.0 中的新過濾功能非常感興趣。 我用 Nuget 更新了我的實體框架,但是在 Include 之后我仍然無法使用 Where。

是不是因為我的 APIP 是在 NET Core 3.1 中開發的?

在此處輸入圖像描述

謝謝您的幫助

編輯:

這是我的 csproj 文件: 在此處輸入圖像描述

原因是因為 GrowerPayee 不是一個集合。 下面的代碼工作正常,但嘗試過濾設置,你會遇到同樣的問題

public class Organisation
{
    public Guid Id { get; set; }
    
    public string Name { get; set; }

    public List<Location> Locations { get; set; }

    public Setting Setting { get; set; }
}

public class Setting
{
    public string ApiKey { get; set; }
}

public class Location
{
    public Guid Id { get; set; }

    public Guid OrganisationId { get; set; }
    
    public Organisation Organisation { get; set; }
    
    public string Name { get; set; }
}

public class Db : DbContext
{
    public DbSet<Organisation> Organisations { get; set; }
}

class Program
{
    static void Main(string[] args)
    {
        using (var db = new Db())
        {
            var organisations = db.Organisations
                .Include(x => x.Locations.Where(l => l.Name.Contains("ABC")))
                .Where(o => o.Name.Contains("OOO"))
                .ToArray();
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM