Здравствуйте, Степанов Андрей, Вы писали:
СА>// EF
СА>ctx.Connection.Open ( );
СА>dtBegin = DateTime.Now;
СА>for ( int i = 0; i < 100; i++ ) {
СА> var hotels1 = ctx.HotelDictionary.Where ( h => h.HD_CNKEY == 1 && h.HD_KEY == 232 ).Select ( h=> new { h.HD_NAME } ).ToArray ( );
СА>}
СА>Console.WriteLine ( DateTime.Now.Subtract ( dtBegin ).TotalSeconds );
А если избавиться от этой сложной лямбды в цикле и написать что-то вроде:
ctx.HotelDictionary.Load();
var hotels1 = from hd in ctx.HotelDictionary.Local
where hd.HD_CNKEY == 1 and hd.HD_KEY == 232
select hd;
Сразу оговорюсь: я не спец по EF, не знаю, превратится ли этот код во что-то более быстрое, просто интересно, а вдруг