powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Спарить LINQ и ADO.NET
3 сообщений из 3, страница 1 из 1
Спарить LINQ и ADO.NET
    #35825574
Hamlet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет.
Такая задача.
Имеем
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
DataTable dt = new DataTable("EmplyeesID");
dt.Columns.Add(new DataColumn("ID", typeof(int)));
for(int i =1;i<100;++i)
{
    DataRow dr = dt.NewRow();
    dr[0] = i;
    dt.Rows.Add(dr);
}
и
Код: plaintext
CREATE TABLE Employees(ID int NOT NULL, Name nvarchar( 50 ))

Можно ли используя LINQ, получить из Employees только те {ID, Name}, ID которых находится
в DataTable -е EmplyeesID, при этом запрашивая DB только один раз (Генерируя что то типа
Код: plaintext
SELECT ID, Name FROM Employees WHERE ID IN (@P1, @P2, ....., @P100)
).

P.S. С LINQ-ом вот-вот знакомлюсь ;)
Заранее спасибо.
...
Рейтинг: 0 / 0
Спарить LINQ и ADO.NET
    #35827120
Revival
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может поможет...

Операцию "in" я реализовывал так:

List<string> list = new List<string> { "13E1E83D-AF88-4CCE-8752-4B4F6E2EEE9D", "15FF945E-50F9-4780-9774-D17DDF56B99E"};

var c = Documents
.Where(a => list.Contains(a.Id))
.Select(a => a);

Где в генерике list лежат первичные ключи записей из таблицы в БД.

результирующий SQL таков:

SELECT [t0].[id] AS [Id], [t0].[DocType], [t0].[DocData], [t0].[DateInsert], [t0].[ClientId]
FROM [Documents] AS [t0]
WHERE ([t0].[id] IN (@p0, @p1))
-- @p0: Input NVarChar (Size = 36; Prec = 0; Scale = 0) [13E1E83D-AF88-4CCE-8752-4B4F6E2EEE9D]
-- @p1: Input NVarChar (Size = 36; Prec = 0; Scale = 0) [15FF945E-50F9-4780-9774-D17DDF56B99E]
...
Рейтинг: 0 / 0
Спарить LINQ и ADO.NET
    #35827314
OldWoker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
здесь обсуждалось http://www.sql.ru/forum/actualthread.aspx?tid=618560 но всё это есть в любой книге по LINQ
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Спарить LINQ и ADO.NET
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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