Шаги для начинающих, чтобы запустить очень простой linq в sql-запрос с помощью Linqpad

Попытка научиться Linq с помощью LinqPad и получить удовольствие от того, как начать с него. Скажем, я хочу написать С# Expression и С# statment, где у меня есть таблица на SQL-сервере с именем Products, и я хочу вытащить все строки, где цена больше 50. Как бы записать его?

Ответ 1

Скажем, я хочу написать выражение С# и статус С#, где я иметь таблицу на SQL-сервере с именем Продукты, и я хочу вытащить все строки где цена больше 50. Как бы записать его?

LINQPad автоматически создает типизированный DataContext для вас, поэтому вам не нужно создавать какие-либо экземпляры. В режиме выражения С# просто введите следующее:

Products.Where(p => p.Price > 50)

и нажмите F5. В качестве альтернативы вы можете использовать выражение запроса:

from p in Products
where p.Price > 50
select p

В режиме операторов С# вам нужно вызвать метод Dump(), чтобы сообщить ему о выводе результатов. Вам также необходимо завершить выражение с точкой с запятой:

Products.Where(p => p.Price > 50).Dump();

В разделе образцов LINQPad есть больше примеров - посмотрите на 5-минутную индукцию.

Ответ 2

Просто хотел добавить - панель LINQ плюрализует - я этого не знал, и это заставило меня сходить с ума за хорошие пятнадцать минут.

Я пытался выбрать из таблицы DentalApplication

    DentalApplication.Where(a=> a.PackageID > 0)

Предоставил мне эту ошибку

    'LINQPad.User.DentalApplication' does not contain a definition for 'Where'

Изменено на

    DentalApplications.Where(a=> a.PackageID > 0)

и он работал

Ответ 3

var db = new MyDatabaseContext();  // Your database context.
var result = db.Products.Where(q=>q.Price > 50);

... где db представляет ваш контекст ORM. Price представляет ваше сопоставление в поле Price в базе данных. result представляет набор результатов - строки/сущности вашей базы данных.

Ответ 4

Отъезд: http://msdn.microsoft.com/en-us/library/bb397933(v=vs.90).aspx, который даст вам введение в Linq и использование лямбда-выражений.

Затем посмотрите http://msdn.microsoft.com/en-us/library/bb386927.aspx, который даст вам основы, но для ответа на ваш конкретный вопрос:

var products = db.Products.Where(prod => prod.Price > 50);
foreach(var product in products)
{
     //do something
}