Заставить LINQ to SQL получать данные только один раз - PullRequest
0 голосов
/ 28 октября 2010

Я использую linq для sql. И сделать что-то вроде:

IEnumerable<VarValues> parameters = GetDayParameters();

protected IEnumerable<VarValues> GetDayParameters()
{
    return "some linq query";
}

После этого я использую LINQ to Objects для «параметров» - переменной, в цикле, и запросы начинают подключаться к базе данных. Вопрос в том, могу ли я принудительно заставить LINQ to SQL получить все, что я хочу из базы данных в переменную параметров, и больше не подключаться к базе данных.

Ответы [ 2 ]

3 голосов
/ 28 октября 2010

Обычно LINQ to SQL не привязан к базе данных, как только вы получили данные из базы данных.

нравится, если вы видите следующий блог ScottGu

http://weblogs.asp.net/scottgu/archive/2007/05/19/using-linq-to-sql-part-1.aspx

Вы можете подключиться к базе данных, получить значения, а затем поиграть с вашим объектом и передать значения обратно.

ExampleЖ

DatabaseContext db = new DatabaseContext()

тогда вы можете запросить вашу базу данных как

var mytable = from a in db.MyTable
              where yournormal_where_statement
              select a;

Надеюсь, это поможет

2 голосов
/ 28 октября 2010

присваивает результат вашего запроса linq объекту var v и затем возвращает v.ToList ()

...