C# 如何在执行联接时使实体框架核心查询某些字段
我使用LINQ从多个表中查询数据C# 如何在执行联接时使实体框架核心查询某些字段,c#,entity-framework,linq,entity-framework-core,C#,Entity Framework,Linq,Entity Framework Core,我使用LINQ从多个表中查询数据 var test= await _context.Article .Select(a => new { a.ID, a.Title, a.CreatedTime, a.EditedTime, a.Author.UserName, a.AuthorID }).ToListAsync(); Author是文章类中的导航属性 但我从日志中得到: Executed DbCommand (6ms) [Paramete
var test= await _context.Article
.Select(a => new
{
a.ID,
a.Title,
a.CreatedTime,
a.EditedTime,
a.Author.UserName,
a.AuthorID
}).ToListAsync();
Author
是文章
类中的导航属性
但我从日志中得到:
Executed DbCommand (6ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
SELECT [a].[ID], [a].[AuthorID], [a].[Content], [a].[CreatedTime], [a].[EditedTime], [a].[Title], [a.Author].[Id], [a.Author].[AccessFailedCount], [a.Author].[ConcurrencyStamp], [a.Author].[Email], [a.Author].[EmailConfirmed], [a.Author].[LockoutEnabled], [a.Author].[LockoutEnd], [a.Author].[NormalizedEmail], [a.Author].[NormalizedUserName], [a.Author].[PasswordHash], [a.Author].[PhoneNumber], [a.Author].[PhoneNumberConfirmed], [a.Author].[SecurityStamp], [a.Author].[TwoFactorEnabled], [a.Author].[UserName]
FROM [Article] AS [a]
LEFT JOIN [AspNetUsers] AS [a.Author] ON [a].[AuthorID] = [a.Author].[Id]
ORDER BY [a].[AuthorID]
我只需要一些字段,但它可以查询所有字段。如果我从我的代码中删除a.Author.UserName
行,它将按预期工作
我错过什么了吗
我正在将Entity Framework Core 1.1.0与Microsoft SQL Server一起使用。此行为已经存在,计划在里程碑2.0.0中修复。现在“唯一”的问题是2.0.0何时到来,以及在此之前人们应该如何处理所有这些bug:)