我有这个结构:
用于注释和其他数据表的SQL数据库(这似乎与该问题无关)。注释表中有票证的参考。为此,我正在使用Entity Framework加载数据。 票证的API调用,我正在使用HttpClientC#中的。 现在,我想使用SQL查询将这两个对象相互连接,以从注释中查询多个其他相关数据。
在SQL中,我知道您可以做这样的事情。将表声明为变量,插入一些数据并将其与注释合并。
declare @tickets table(
ID int primary key,
[Subject] nvarchar(max)
);
-- Making API call and insert results into @tickets
select *
from Notes note inner join @tickets tick on tick.ID = note.TicketID
where tick.Subject like @q + '%';
我的问题是,在EF中能否获得相同的结果?我知道我无法使用EF进行API调用,因此我在method中这样做
从查询中删除分配,您就可以了。
var list = db.Notes
.Join(
tickets,
note => note.TicketID,
tick => tick.ID,
(note, tick) => new { note, tick}
)
.ToList();
foreach(var item in list)
item.note.Ticket = item.tick;
另外,您也可以制作一个,new Note()但是必须逐个属性地复制它。
如果这是在EF模型中建立的关系,则不需要最后一次迭代,也不需要整个Join。
会很短
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。