Сообщение Re[69]: Тормознутость и кривость linq от 15.04.2016 17:22
Изменено 15.04.2016 18:46 Serginio1
Здравствуйте, alex_public, Вы писали:
S>> И я тебе уже 150000 раз говорил про возможность предварительной компиляции запроса. То есть построение запроса делается только один раз. Кстати в тестах даппера это есть. Но ты опять ничего не видишь
_>А ты в начале продемонстрируй здесь как выглядит подобный код со скомпилированными запросами, а потом говори об этом.)
Уже 150000 и давал ссылки. Уже устал. Но ты все твердишь одно и тоже, даже сам ни разу не попробовав. Не читал, но осуждаю.
Ты теоретик ....
А что бы не делать синтетических тестов можно взять реальный, сделать копию и нагрузить DoS атакой.
S>> И я тебе уже 150000 раз говорил про возможность предварительной компиляции запроса. То есть построение запроса делается только один раз. Кстати в тестах даппера это есть. Но ты опять ничего не видишь
_>А ты в начале продемонстрируй здесь как выглядит подобный код со скомпилированными запросами, а потом говори об этом.)
Уже 150000 и давал ссылки. Уже устал. Но ты все твердишь одно и тоже, даже сам ни разу не попробовав. Не читал, но осуждаю.
Ты теоретик ....
А что бы не делать синтетических тестов можно взять реальный, сделать копию и нагрузить DoS атакой.
Здравствуйте, alex_public, Вы писали:
S>> И я тебе уже 150000 раз говорил про возможность предварительной компиляции запроса. То есть построение запроса делается только один раз. Кстати в тестах даппера это есть. Но ты опять ничего не видишь
_>А ты в начале продемонстрируй здесь как выглядит подобный код со скомпилированными запросами, а потом говори об этом.)
Уже 150000 и давал ссылки. Уже устал. Но ты все твердишь одно и тоже, даже сам ни разу не попробовав. Не читал, но осуждаю.
Ты теоретик ....
А что бы не делать синтетических тестов можно взять реальный, сделать копию и нагрузить DoS атакой.
Кстати в EF можно использовать Database.SqlQuery
SqlQuery<TElement>(String, Object[])
https://msdn.microsoft.com/ru-ru/library/system.data.entity.database.sqlquery(v=vs.113).aspx
http://metanit.com/sharp/entityframework/5.1.php
Есть свобода для использования сложных запросов, с типизацией результата
S>> И я тебе уже 150000 раз говорил про возможность предварительной компиляции запроса. То есть построение запроса делается только один раз. Кстати в тестах даппера это есть. Но ты опять ничего не видишь
_>А ты в начале продемонстрируй здесь как выглядит подобный код со скомпилированными запросами, а потом говори об этом.)
Уже 150000 и давал ссылки. Уже устал. Но ты все твердишь одно и тоже, даже сам ни разу не попробовав. Не читал, но осуждаю.
Ты теоретик ....
А что бы не делать синтетических тестов можно взять реальный, сделать копию и нагрузить DoS атакой.
Кстати в EF можно использовать Database.SqlQuery
SqlQuery<TElement>(String, Object[])
https://msdn.microsoft.com/ru-ru/library/system.data.entity.database.sqlquery(v=vs.113).aspx
http://metanit.com/sharp/entityframework/5.1.php
Итак, получим все модели из таблицы Companies:
using(PhoneContext db = new PhoneContext())
{
var comps = db.Database.SqlQuery<Company>("SELECT * FROM Companies");
foreach (var company in comps)
Console.WriteLine(company.Name);
}
Выражение SELECT извлекает данные из таблицы. Так как эта таблица сопоставляется с моделью Company и хранит объекты этой модели, то данный вызов типизируется классом Company: db.Database.SqlQuery<Company>()
Другая версия метода SqlQuery() позволяет использовать параметры. Например, выберем из бд все модели, которые в названии имеют подстроку "Samsung":
using(PhoneContext db = new PhoneContext())
{
System.Data.SqlClient.SqlParameter param = new System.Data.SqlClient.SqlParameter("@name", "%Samsung%");
var phones = db.Database.SqlQuery<Phone>("SELECT * FROM Phones WHERE Name LIKE @name",param);
foreach (var phone in phones)
Console.WriteLine(phone.Name);
}
Класс SqlParameter из пространства имен System.Data.SqlClient позволяет задать параметр, который затем передается в запрос sql.
Есть свобода для использования сложных запросов, с типизацией результата