Menu

Pequeña introducción a Linq

Julio 10, 2010 - ASP.NET

Introducción


Language Integrated Query (LINQ) es un proyecto de Microsoft que agrega consultas nativas semejantes a las de SQL a los lenguajes de la plataforma .NET, inicialmente a los lenguajes Visual Basic .NET y C#.

En el presente post les haré un pequeña introduccion a Linq, les mostrare como mapear una clase y asignar un procedimiento almacenado a el DataContext que hayamos creado.

Manos a la obra!

Lo primero que debemos hacer es tomar una tabla de nuestra base de datos en este caso he usado la tabla Deparment de la base de datos AdvetureWorks (¿No les había dicho que la descargaran?). Dicho esto pasemos a ensuciarnos las manos….

1. Creamos el procedimiento.

Creamos el procedimiento almacenado que sera el encargado de insertar los datos en nuestra base de datos y en la tabla correspondiente.

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[uspDepartmentInsert](@Name nvarchar(50), @GroupName nvarchar(50), @ModifiedDate datetime)
AS
INSERT INTO HumanResources.Department (Name, GroupName, ModifiedDate) VALUES (@Name, @GroupName, @ModifiedDate)

2. Creamos nuestro proyecto

Bien sea WinForms o ASP.NET, lo importante es que al explorador agreguemos un nuevo item, en categoria escogemos Data y por ultimo Linq To SQL Classes, le colocamos el nombre que deseemos.

3. Configuramos nuestro dbml

Luego de haber insertado el archivo .dbml lo pasamos a configurar, esto es agregarle las clases con las que vamos a trabajar y los métodos que se desean si los tiene (En nuestro caso usaremos 1). Para esto nos conectamos al explorardor de soluciones y desde allí arrastramos la tabla a la superficie de diseño, el diseñador automáticamente nos mapea la tabla en un clases con sus respectivas clases, luego buscamos el procedimiento almacenado que cramos y lo arrastramos a la superficie de métodos, a continuación seleccionamos la clase que acabamos de crear y en sus propiedades buscamos una que diga insert allí personalizamos la clase para que use nuestro procedimiento almacenado. (yo ademas de esto personalice el nombre de metodo para que en vez de “uspDeparmentInsert” quedara “DeparmentInsert”) Listo! tenemos nuestra capa de acceso a datos lista para probar.

4. Pruebas

Ya con todo configurado podemos probar nuestra capa de acceso a datos, para ellos podemos usar el siguiente código:


protected void btnInsert_Click(object sender, EventArgs e)

{

string Name = txtName.Text;

string GroupName = txtGroupName.Text;

string ModifiedDate = txtModifiedDate.Text;

AdventureWorksDataContext AdventureWorks = new AdventureWorksDataContext();

try

{

AdventureWorks.DepartmentInsert(Name, GroupName, Convert.ToDateTime(ModifiedDate));

AdventureWorks.SubmitChanges();

}

catch (Exception ex)

{

}

}

Happy coding!!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *