Случайная строка из БД SQL Server с использованием DLINQ - PullRequest
1 голос
/ 30 апреля 2009

Мне нужно получить случайные строки из базы данных SQL Server. Я ищу способ добиться этого с помощью запроса LINQ. Возможно ли это?

Запрос SQL: ВЫБЕРИТЕ [Id] ИЗ [MyTable] ЗАКАЗАТЬ NEWID ()

Что такое эквивалентный запрос LINQ для вышеуказанного SQL?

Заранее спасибо.

1 Ответ

1 голос
/ 30 апреля 2009

Создайте частичное для вашего класса контекста данных и введите следующий метод:

partial class MyDataContext {
    [Function(Name = "NEWID", IsComposable = true)]
    public Guid Random()
    {
        return Guid.NewGuid();
    }
}

Теперь вы можете составить это в своем запросе, и он будет преобразован в вызовы функции sql newid () следующим образом:

from x in dc.MyEntities orderby dc.Random() select x.Id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...