尝试在我的查询中使用Computed列,但似乎EF Core像任何其他列一样处理它,只是忽略映射。我有什么不对的吗?或者我误解了计算列的用法:S这几乎与文档使用的示例相同。
我在OnModelCreating中运行MapUsers(modelBuilder.Entity<User>());
。
映射:
private static void MapUsers(EntityTypeBuilder<User> entity)
{
entity.Property(p => p.FullName)
.HasComputedColumnSql("[FirstName] + ' ' + [LastName]");
entity.ToTable("User");
}
这是生成的查询:
SELECT [FirstName], [u].[FullName], [u].[LastName]
FROM [User] AS [u]
通过使用此行而不是使用强类型属性
来管理以使其在查询中起作用$"{u.FirstName} {u.LastName}".Contains(query)