2015-02-19 2 views
0

Я работаю над проектом, который основан на объектах PowerBuilder и DataWindow. Теперь одна из вещей, которую мы хотим, - «захватить» объекты DataWindow и преобразовать их в объекты .NET (на C#), основывая их на запросе. Из этого запроса я хочу, чтобы EF проанализировал его и построил объект, который отражает объект, полученный данным запросом/datawindow. Данные извлекаются из 4 разных таблиц в базе данных Sybase ASE.Объекты Entity Framework из SQL-запроса

У меня создалось впечатление, что я могу сказать, что EF ведет себя так, передавая ему запрос и позволяя ему создавать объект, но я не мог этого сделать, и я как бы ударил кирпичную стену, так как DataWindow .NET (из Sybase) - это прекращенный проект (в 2008 году), и я действительно не могу найти альтернативы помимо EF.

Если предполагаемое поведение возможно, может ли кто-нибудь указать мне в правильном направлении? И если нет, есть ли какой-либо компонент/фреймворк, который ведет себя так, как предполагалось?

+1

ли вы посмотрите на [Dapper] (https://github.com/StackExchange/dapper-dot-net)? Также см. [This] (http://stackoverflow.com/q/7823668/861716). –

+0

@GertArnold Вы намерены разместить две ссылки одинаковыми? :) –

ответ

1

Entity Framework не работает таким образом. Вы не можете дать ему некоторый SQL и угадать некоторые объекты .NET для вас. Однако вы можете сделать это, используя Dapper-dot-net.

https://github.com/StackExchange/dapper-dot-net

+1

Несомненно, EF может материализовать сущности из необработанного SQL, но я согласен с вами в том, что Dapper - гораздо лучший выбор (отсюда и мой комментарий выше). –

+0

Нет, я действительно не знал Даппера. Я определенно посмотрю на него (когда Wi-Fi решит перестать действовать). Может ли кто-нибудь из вас объяснить, почему EF не ведет себя так, как предполагалось? Вы оба упоминаете, что он может принимать SQL-запросы и материализовывать объекты, но я не следую по причинам, которые, если он может это сделать, почему он не просто будет создавать объекты из этого. Кроме того, где Dapper отличается от PetaPoco (например): http://www.toptensoftware.com/petapoco/ –

+0

@Zed_Blade Я не знаю всех различий. Я знаю только, что Даппер подойдет к законопроекту. EF будет вести себя так, как предполагалось (т. Е. Создавать объекты объектов из необработанного SQL), но я не являюсь его основной функциональностью, и это даст вам много накладных расходов. –

Смежные вопросы