powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / sql 2 linq2sql
14 сообщений из 14, страница 1 из 1
sql 2 linq2sql
    #38601223
tual
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не смог как-то найти онлайн конвертера

Помогите перевести в method chain

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT	COUNT (ri.SentToDispatcherUserId)					
			FROM [ReceivedSupplierInvoice] ri WITH(NOLOCK)
			INNER JOIN 	@Dispatchers d 
			ON ri.SentToDispatcherUserId = d.DispatcherGuid
			JOIN [ReceivedSupplierInvoiceEmail] em
			ON ri.ReceivedSupplierInvoiceEmailId = em.ReceivedSupplierInvoiceEmailId
			WHERE 
				ri.SentToDispatcherDate IS NOT NULL
				AND ri.IsDeleted != 1
				AND em.IsProcessed = 1	



Спасибо
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38601226
tual
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
@Dispatchers это в коде по сути List<SomeClass>
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38601276
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в чем беде? list_of_ids.Contains(SentToDispatcherUserId)
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38601289
tual
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
надо весь запрос перевести
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38601313
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Даже не знаю... сработает ли
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
List<SomeClass> Dispatchers =...;
var ids = Dispatchers.Select(rws => rws.DispatcherGuid).ToArray();

ReceivedSupplierInvoice.Where(mr => mr.SentToDispatcherDate != null && mr.IsDeleted != 1 && ids.Contains(mr.SentToDispatcherUserId))
				.Join(ReceivedSupplierInvoiceEmail.Where(sr => sr.IsProcessed == 1 ) , 
								ri => ri.ReceivedSupplierInvoiceEmailId, 
								em => em.ReceivedSupplierInvoiceEmailId, 
								(ri, em) => new {ri.SentToDispatcherUserId} ).Count();
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38601332
tual
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо :)
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38601406
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buser,

будет работать, пока в Dispatchers будет меньше 2100? записей))
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38601659
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch, ну не на чем проверить мене :) писал в блокнотике... одно точно скажу - EF в runtim'е плюнет известной ошибкой...
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38601867
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buser,

там все тривиально. Contains с коллекцией превратится в кучу Where, а у MS SQL ограничение на 2100? параметров в запросе )
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38601959
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch, в Linq2sql он превратится в In
Про параметры я не понял... им неоткуда там взяться... в худшем случае будет уева туча запросов... :) Или я не прав?
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38602035
Lelouch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buser,

Вот тут ответ: http://social.msdn.microsoft.com/Forums/en-US/b5e89594-f638-46de-9ffd-4b07ed28ec68/support-for-ienumerablecontains?forum=adonetefx

Даже если он и превратится в IN (хотя лично у меня в L2S это превращалось в Where), то это будет IN с числом параметров равным количеству элементов коллекции. Если элементов коллекции будет больше 2100, то провайдет MS SQL выдаст ошибку.
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38602095
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelouch, и точно... все элементы списка объявляет аки параметры и пихает в In с соответствующей ошибкой. Забавно...
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38602115
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buser,

не забавно, а пииичально
...
Рейтинг: 0 / 0
sql 2 linq2sql
    #38602126
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRos, ну... ибо нефик... В любом случае, особо пытливые могут вооружиться напильником и исправить этот вопиющий косяк...
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / sql 2 linq2sql
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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