Гость
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / изменить запрос выборки данных / 22 сообщений из 22, страница 1 из 1
04.03.2015, 23:36
    #38895267
izoldov-roskini
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
Добрый вечер. Есть необходимость изменить тот запрос на получение данных в Entity Framework который генерится автоматом. Посмотрел через профайлер мне запрос не нравится. Как я могу это сделать и каким образом. Вставка удаление и изменение это можно и в конструкторе модели поменять а вот selecta нет
...
Рейтинг: 0 / 0
05.03.2015, 00:38
    #38895296
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
izoldov-roskiniПосмотрел через профайлер мне запрос не нравится.
это здоровая реакция
...
Рейтинг: 0 / 0
05.03.2015, 00:57
    #38895300
Monochromatique
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
izoldov-roskini Посмотрел через профайлер мне запрос не нравится.

Думаю, что когда запрос увидел тебя - он тоже был в шоке
...
Рейтинг: 0 / 0
05.03.2015, 10:14
    #38895536
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
izoldov-roskini,

Мы должны угадать, что именно вам не нравится в запросе?

Впрочем, в значительной степени тема рассмотрена в соседнем топике (хотя поначалу была не совсем об этом)
...
Рейтинг: 0 / 0
06.03.2015, 13:28
    #38897126
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
izoldov-roskini,

В EF можно вызывать харнимые процедуры.
...
Рейтинг: 0 / 0
08.03.2015, 13:16
    #38898326
izoldov-roskini
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
1. Суть не в том что именно не нравится в запросе на выбоке, вопрос в том, как я могу его поменять, без всяких но и т.д., вопрос вполне конкретен
2. Хранимые процедуры это хорошо, это я знаю, но речь идет сейчас именно о замене запроса выборки на тот что нужен мне
...
Рейтинг: 0 / 0
09.03.2015, 12:45
    #38898749
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
izoldov-roskini1. Суть не в том что именно не нравится в запросе на выбоке, вопрос в том, как я могу его поменять, без всяких но и т.д., вопрос вполне конкретен
2. Хранимые процедуры это хорошо, это я знаю, но речь идет сейчас именно о замене запроса выборки на тот что нужен мне

Вы бы привели пример Вашего запроса и как EF его ретранслирует в запрос к БД в профайлере. Там уже конкретика может быть, а так...
...
Рейтинг: 0 / 0
09.03.2015, 14:58
    #38898828
carrotik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
AxeleronВы бы привели пример Вашего запроса и как EF его ретранслирует в запрос к БД в профайлере. Там уже конкретика может быть, а так...

... по-моему, ТС интересует вопрос "Где в Студии кнопка "изменить запрос" ....
...
Рейтинг: 0 / 0
09.03.2015, 15:13
    #38898841
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
carrotik... по-моему, ТС интересует вопрос "Где в Студии кнопка "изменить запрос" ....

А зачем такая кнопка в студии? Комбинацией lambda выражений можно обычно добиться более-менее удобоваримого варианта запроса. Если не устраивает по каким-то причиниам, то ХП в помощь. EF не заточен по умолчанию на перформанс или красоту SQL выражений.
...
Рейтинг: 0 / 0
09.03.2015, 22:51
    #38899233
izoldov-roskini
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
Не понятно под что он заточен тогда. Основная работа с БД это запросы к ней и хотелось бы этим процессом управлять м не важно какой запрос. В том же датасете можно делать все что угодно и в принципе вполне удобно. А тут куча непонятных ограничений и самое главное ничем по скорости её отличается. Может я не прав - тогда поставьте и укажите на то например что в ef все быстреци прозрачней. Пока не заметил
...
Рейтинг: 0 / 0
10.03.2015, 01:05
    #38899263
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
Быстрее не работа с БД, а разработка прикладного взаимодействия с БД.
В РАЗЫ.

Именно под это заточен.

izoldov-roskiniхотелось бы этим процессом управлятьдля управления сложными запросами и алгоритмами существует возможность работы с ХП. А EF упрощает типовые операции "достать запись", "изменить запись", "положить запись обратно" (включая связанные записи, в т.ч. 1:1,1:М, М:М), ну и типовые выборки без сложной оптимизации.
...
Рейтинг: 0 / 0
10.03.2015, 09:19
    #38899417
izoldov-roskini
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
Shocker.Pro,
Т.е. Вы хотите сказать что для построения сложных запросов, выборок и т.д. везде надо толкать ХП ?
...
Рейтинг: 0 / 0
10.03.2015, 10:07
    #38899483
super-code
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
Над автором все издеваются? :)

https://msdn.microsoft.com/en-us/data/jj592907.aspx

Writing SQL queries for entities

The SqlQuery method on DbSet allows a raw SQL query to be written that will return entity instances. The returned objects will be tracked by the context just as they would be if they were returned by a LINQ query. For example:

Код: c#
1.
2.
3.
4.
using (var context = new BloggingContext()) 
{ 
    var blogs = context.Blogs.SqlQuery("SELECT * FROM dbo.Blogs").ToList(); 
}



Note that, just as for LINQ queries, the query is not executed until the results are enumerated—in the example above this is done with the call to ToList.

Care should be taken whenever raw SQL queries are written for two reasons. First, the query should be written to ensure that it only returns entities...
...
Рейтинг: 0 / 0
10.03.2015, 10:13
    #38899490
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
Shocker.ProБыстрее не работа с БД, а разработка прикладного взаимодействия с БД.
В РАЗЫ.Прям таки в РАЗЫ? Как измерили?
...
Рейтинг: 0 / 0
10.03.2015, 11:04
    #38899573
ЕвгенийВ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
izoldov-roskini,
Можно забацать свои реализации DbExpressionVisitor и DbExpressionVisitor<TResultType>
...
Рейтинг: 0 / 0
10.03.2015, 11:22
    #38899603
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
ЕвгенийВizoldov-roskini,
Можно забацать свои реализации DbExpressionVisitor и DbExpressionVisitor<TResultType>Заманчиво.
...
Рейтинг: 0 / 0
10.03.2015, 11:22
    #38899604
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
Изопропилizoldov-roskiniПосмотрел через профайлер мне запрос не нравится.
это здоровая реакцияЗдоровая, если смотрел план выполнения, а не текст запроса.
...
Рейтинг: 0 / 0
10.03.2015, 11:23
    #38899606
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
izoldov-roskiniЕсть необходимость изменить тот запрос на получение данных в Entity Framework который генерится автоматом. Что мешает изменить LINQ-запрос соответствующим образом?
...
Рейтинг: 0 / 0
10.03.2015, 12:12
    #38899709
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
skyANAПрям таки в РАЗЫ? Как измерили?по себе. Сравниваю вкладываемые в работы с БД усилия до и после EF. Сделав несколько удачных обобщенных методов поверх EF для репозитория, в 90% случаев работы с БД я вообще не думаю об обмене данными с БД.
...
Рейтинг: 0 / 0
10.03.2015, 13:50
    #38899873
Axeleron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
Shocker.ProskyANAПрям таки в РАЗЫ? Как измерили?по себе. Сравниваю вкладываемые в работы с БД усилия до и после EF. Сделав несколько удачных обобщенных методов поверх EF для репозитория, в 90% случаев работы с БД я вообще не думаю об обмене данными с БД.
+1
...
Рейтинг: 0 / 0
10.03.2015, 16:00
    #38900155
izoldov-roskini
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
super-codeНад автором все издеваются? :)

https://msdn.microsoft.com/en-us/data/jj592907.aspx

Writing SQL queries for entities

The SqlQuery method on DbSet allows a raw SQL query to be written that will return entity instances. The returned objects will be tracked by the context just as they would be if they were returned by a LINQ query. For example:

Код: c#
1.
2.
3.
4.
using (var context = new BloggingContext()) 
{ 
    var blogs = context.Blogs.SqlQuery("SELECT * FROM dbo.Blogs").ToList(); 
}



Note that, just as for LINQ queries, the query is not executed until the results are enumerated—in the example above this is done with the call to ToList.

Care should be taken whenever raw SQL queries are written for two reasons. First, the query should be written to ensure that it only returns entities...

Спасибо, дельная вещь, как говоритья вместо тысячи слов. Бинго.
Тема закрыта
...
Рейтинг: 0 / 0
10.03.2015, 16:07
    #38900166
Алексей К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
изменить запрос выборки данных
izoldov-roskinisuper-codeНад автором все издеваются? :)

https://msdn.microsoft.com/en-us/data/jj592907.aspx

Writing SQL queries for entities

The SqlQuery method on DbSet allows a raw SQL query to be written that will return entity instances. The returned objects will be tracked by the context just as they would be if they were returned by a LINQ query. For example:

Код: c#
1.
2.
3.
4.
using (var context = new BloggingContext()) 
{ 
    var blogs = context.Blogs.SqlQuery("SELECT * FROM dbo.Blogs").ToList(); 
}



Note that, just as for LINQ queries, the query is not executed until the results are enumerated—in the example above this is done with the call to ToList.

Care should be taken whenever raw SQL queries are written for two reasons. First, the query should be written to ensure that it only returns entities...

Спасибо, дельная вещь, как говоритья вместо тысячи слов. Бинго.
Тема закрытаТипизация при работе с данными не нужна, тема закрыта... Возьми тогда какой-нибудь Dapper.Net и не мучайся.
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / изменить запрос выборки данных / 22 сообщений из 22, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]