2008-08-11 34 views
35

Durante la versión beta de Stack Overflow, he visto bastantes preguntas sobre LINQ SQL pero no sé nada al respecto ... suena muy interesante.Guía para principiantes de LINQ

¿Qué es LINQ y cómo empiezo?

Enlaces guías o documentación de un bono :)

PD: Soy un desarrollador de C# mucho tiempo que a diario utiliza tablas de datos y SQL parametrizada

Respuesta

37

LINQ es sinónimo de Language Integrated Query y es un conjunto de extensiones para .NET que le permiten consultar datos de la misma manera a partir de código y ISN' t vinculado a una fuente de datos específica. Puede usar el mismo código LINQ para SQL Server, XML, objetos, DataSets y Entidades.

Aquí es una buena introducción de Scott Guthrie

Este es un buen conjunto de 101 LINQ Samples

+0

101 LINQ Sampels es fantástico, todavía lo uso mucho y siempre lo recomiendo para otros –

11

Dos libros que usted debe considerar para el aprendizaje de LINQ, tanto de Manning:

El primero fue de lejos el mejor escrito, y me enseñaron casi tanto sobre LINQ en un solo capítulo que este último en un libro completo. LINQ se basa en una gran cantidad de cimientos, y C# en profundidad lo construye desde el suelo.

El segundo libro es mucho mejor que nada, y aprenderá cosas específicamente sobre LINQ que no aprenderá en el primero. Pero el primer libro le dará una base mucho mejor, y pone al menos una perspectiva simbólica en lugar de seguir más o menos ciegamente la línea MS. Por lo tanto, estoy recomendando C# en profundidad en primer lugar para aprender LINQ.

Mike

4

Linq es la abreviatura de "Consulta integrada de idioma."Es un conjunto de mejoras de lenguaje integradas en C# y VB. Básicamente, lo que obtienes es un conjunto de operadores de consulta estándar que se pueden aplicar a cualquier IEnumerable de tipo T. Hay muchos proveedores de linq diferentes para tipos específicos de datos. ejemplo, hay linq a xml, linq a entidades, incluso linq a sharepoint.

Para comenzar con linq, en todas sus muchas formas, sugiero el libro Pro Linq by Joseph C. Rattz. Es una excelente visión general de Linq. Toma un ground-up enfoque, describiendo primero todas las características del lenguaje (como Lambda Expressions y Expression Trees) sobre las que se basa Linq, y luego pasando a algunas implementaciones de proveedor linq estándar.

Además, aquí hay un artículo de MSDN muy bueno que describe Linq: LINQ: .NET Language-Integrated Query

Ahora, Linq to Sql es un proveedor de linq escrito específicamente para SQL Server. Incluido en este proveedor es un OR/M, que le da una funcionalidad práctica (como escribir todas sus tablas sql, para que obtenga una vista robusta en tiempo de diseño del esquema de su base de datos). Es totalmente increíble, y para mí, ha acelerado enormemente el tiempo de desarrollo cuando se trabaja con una base de datos sql. El libro que recomendé anteriormente también tiene una gran sección sobre el uso de Linq To Sql. Además, He aquí un buen artículo "Guía para principiantes" de MSDN: Linq To SQL: .NET Language-Integrated Query for Relational Data

1

Creo que este libro:

C# in Depth

Por Jon Skeet es guía de un excelente programadores que satisfaga sus necesidades exactas (moviéndose desde C# anterior a C# 3.5).

Además, si lo solicita también obtiene la copia electrónica, algo que más editores deberían hacer (excelente tanto para Kindles como para búsqueda).

3

a la práctica sin la necesidad de escribir código de envoltura sólo para ejecutar consultas LINQ podría utilizar linqpad.net

5

I fuertemente sugeriría usted tiene un juego alrededor con LINQPad (http://www.linqpad.net), es una herramienta gratuita que permite (umong otras cosas) que conecte a un servidor de base de datos y consultarlo usando LINQ to SQL. Le quita el dolor de tener que configurar las aplicaciones de la consola para jugar.

+0

El único problema con LinqPad es que no tiene intelisense como el que obtendría con Visual Studio. Eso hace que sea un poco más difícil explorar un objeto de contexto de datos. – Chris

+0

@Chris, intellisense en LinqPad es una función premium que requiere que envíe unos pocos dólares. Bien, bien vale la pena. LinqPad es una programación interactiva genuina en .NET, que es una instalación a menudo pasada por alto pero muy valiosa. Muchas personas se dejan llevar por los lenguajes dinámicos porque generalmente vienen con experiencias de programación interactiva, sin darse cuenta de que es la * experiencia * que necesitan en lugar del lenguaje. LinqPad, pero solo LinqPad en nuestro ecosistema actual, demuestra que la programación de C# puede ser tan rápida y divertida como la programación en Python. –

Cuestiones relacionadas