Ниже ссылки на интро к Linq
What is Linq and what does it do?
http://weblogs.asp.net/scottgu/using-linq-to-sql-part-1
Linq обеспечивает среднее запрашивая данные, но вам все равно необходимо предоставить средства Linq для доступа к этим данным - будь то через классы Linq2Sql, ADO, Entity Framework и т. д.
Я поклонник Entity Framewo rk (EF), где вы настраиваете объекты, которые представляют ваши данные, и используйте контекст для заполнения этих объектов.
это может выглядеть примерно так:
public class Table1
{
public string FirstName { get; set; }
public string SurName { get; set; }
public DateTime DOB { get; set; }
}
public class Table1Repository
{
private readonly MyEntities _context;
public Table1Repository()
{
this._context = new MyEntities();
}
public IQueryable<Table1> Get()
{
return this._context.Table1; // in effect your "Select * from table1"
}
public IQueryable<Table1> GetById(DateTime dob)
{
return this._context.Table1.Where(w => w.DOB == dob); // pulls records with a dob matching param - using lambda here but there is also "query expression syntax" which looks more like sql
}
}
Обратите внимание, что вы выполняете Linq запросов от контекста, который представляет данные, а не сама база данных. Linq очень мощный, но вам необходимо предоставить ему доступ к данным. Даже если эти данные - это xml, файл, база данных, что угодно!
LINQ - это всего лишь язык запросов. Это не относится к базам данных. Я бы предложил вам взглянуть на ORM, как на Entity Framework, так как он может занять много работы для вас. На данный момент вы также можете отказаться от баз данных, просто используйте LINQ для базового массива в памяти. – Arran
@Arran Веб-сайт, на котором я работаю в настоящее время, использует EF 6 Мне дали проект на полпути, поэтому нужно быстро привыкнуть. Я ценю ваши предложения – Code
[LINQ] (http://msdn.microsoft.com/en-us/library/bb397926.aspx) означает Language Integrated Query - он используется для запроса чего-то интегрированного в язык. Например, вы можете запросить 'List <>', используя '.Where()'. На самом деле это не так много общего с базами данных. –