【发布时间】:2018-01-29 20:54:36
【问题描述】:
我有一个类,它的数据来自两个不同的来源 - 一个是数据库,另一个是 Web API。
数据库源为我提供了大部分数据,而 Web API 仅提供了一些属性。
我使用 Dapper 从数据库中获取数据,作为 IEnumerable<MyClass>(其中来自 Web API 的属性都是空值),
来自 Web API 的数据是 IEnumerable<WebApiClass>。
现在我需要将这两个结果合并到一个 IEnuemrable<MyClass> - 很简单 -
var query = from c in dbResults
join w in webResults on c.Id equals w.Id
select new MyClass()
{
dbProp1 = c.dbProp1, dbProp2 = c.dbProp2, ...
waProp1 = w.Prop1, waProp2 = w.Prop2, ...
}
有没有办法在不选择new MyClass() 的情况下做到这一点,而只需使用dbResults 中已经存在的MyClass 实例?
我见过的所有连接查询都使用 select new - 这真的是唯一的选择吗?
【问题讨论】:
-
我认为您的问题的措辞可能会有所不同,因为您真正想要的是
select c具有基于w的更新属性-- 其中有already been asked and answered -
@MarkC。谢谢,我确实尝试改写我的搜索,但没有出现。
-
完全没问题