|
|
|
Спарить LINQ и ADO.NET
|
|||
|---|---|---|---|
|
#18+
Привет. Такая задача. Имеем Код: plaintext 1. 2. 3. 4. 5. 6. 7. Код: plaintext Можно ли используя LINQ, получить из Employees только те {ID, Name}, ID которых находится в DataTable -е EmplyeesID, при этом запрашивая DB только один раз (Генерируя что то типа Код: plaintext P.S. С LINQ-ом вот-вот знакомлюсь ;) Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2009, 18:31 |
|
||
|
Спарить LINQ и ADO.NET
|
|||
|---|---|---|---|
|
#18+
Может поможет... Операцию "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] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.02.2009, 13:24 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=35827314&tid=1351939]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
50ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 312ms |

| 0 / 0 |
