Я нашел несколько вопросов, которые выглядели одинаково, но не совсем так, поэтому я пойду на это.
Я использую EF для получения 2 таблиц.Эти таблицы / сущности не имеют реальных отношений "есть".У них просто есть пара общих полей, которые я хочу раскрыть в списке, содержащем первые N записей комбинации между двумя таблицами.У каждой строки должен быть какой-то способ определить, к какому типу она относится и на какой экземпляр она указывает.
Я решил проблему, но, думаю, мне было интересно, есть ли лучший способ.Моим решением было создать класс ViewModel:
intenal class EntityAEntityBCombination
{
public int? EntityAID { get; set; }
public int? EntityBID { get; set; }
public string CommonProperty { get; set; }
}
Затем я сделал это:
var results = (
from a in EntityAList select new EntityAEntityBCombination
{ EntityAID = a.Id, EntityBID = null, CommonProperty = a.CommonProperty }
).Concat(
from b in EntityBList select new EntityAEntityBCombination
{ EntityAID = null, EntitiyBID = b.Id, CommonProperty = b.CommonProperty }
).Fetch(N)
Это работает, но кажется грязным.Есть предложения?