У меня есть веб-сервер, который динамически генерируется на основе таблицы в моей структуре сущностей. Сейчас принимается решение иметь идентично структурированную таблицу с другим набором данных, и мне нужен какой-то способ динамически переназначить свой элемент управления другой таблице. (Я сделал все для того, чтобы сохранить одну таблицу и просто добавить флаг, поэтому давайте не будем идти по этой дороге, пожалуйста)
Я мог бы сделать это, используя linq-to-entity, добавив новую таблицу в мою модель сущностей и просто условно запросив одну или другую таблицу в модели. Проблема в том, что результаты, возвращаемые запросом, будут коллекциями двух разных классов сущностей. Это создает проблему со всем кодом, который работает с этими коллекциями, так как он должен быть модифицирован и потенциально дублирован, чтобы эта работа работала.
Так что, если я могу каким-то образом отобразить результаты запросов linq так, чтобы независимо от того, к какой таблице я запрашиваю, результаты принадлежали к одному и тому же типу класса, это минимизирует влияние на остальную часть кода. Как бы я мог выполнить что-то вроде приведенного ниже, где две разные таблицы могут быть материализованы как список одного и того же типа класса?
Обратите внимание, что я использую .NET 3.5
var formFooQuery;
if(mode1 == true)
{
formFooQuery = from r in EntitiesContext.Foo1Set.Include("Foo1Data")
where r.FooId == fooId
select r;
}
else
{
formFooQuery = from r in EntitiesContext.Foo2Set.Include("Foo2Data")
where r.FooId == fooId
select r;
}
List<Foo> foos = formFooQuery.ToList<Foo>();