在从不同大小的 varchar 列派生的 linq 查询中连接 Entity Framework Core 模型

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

细节:使用 linq 方法语法和数据库优先的 Entity Framework Core 模型。

数据库是SQL Server。

我有 3 个表,前两个表的列是数据类型

varchar(256)
,相应的实体属性有数据注释
StringLength(256)
。第三个表中的列定义为
varchar(20)
,相应的实体属性具有数据注释
StringLength(20)
.

查询:

ThingList = await ctx.Table1.Select(i => i.Thing)
            .Concat(ctx.Table2.Select(bi => bi.Thing))
            .Concat(ctx.Table3.Select(ba => ba.Thing))
            .Distinct().ToListAsync();

当我只连接前两个表时查询有效,但当我尝试包含第三个表时查询不起作用。我假设这是因为尺寸不同。

我该如何解决这个问题?提前谢谢你。

c# linq .net-core entity-framework-core linq-to-entities
© www.soinside.com 2019 - 2024. All rights reserved.