EF Core 是否引入了行为更改,允许在 LINQ 查询中直接进行实体投影?

问题描述 投票:0回答:1

我正在我的 .NET 项目中使用 EF Core 8 和 MySql 提供程序 (Pomelo)。我遇到了一种奇怪的情况,其中以下代码片段无需 Dtos 即可运行,并且不会产生错误“无法在 LINQ to Entities 查询中构造实体”

EF Core 发生了什么变化,或者我的代码有问题吗?我记得在这种情况下你需要使用 Dtos,否则会抛出错误。任何见解将不胜感激!

public DbSet<Product> Products { get; set; }

var list = DbContext.Products

.Select(x => new Product()

{

ID = x.ID,

Name = x.Name,

Qty = x.Qty,

}).ToList();

我正在使用以下 EF Core 包参考:

<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.10" />

<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="8.0.2" />
c# entity-framework linq entity-framework-core linq-to-entities
1个回答
0
投票

这一直有效,并且与跑步相同

var list = DbContext.Products.ToList();

© www.soinside.com 2019 - 2024. All rights reserved.