LINQ to SQL (Parte 6 – Obtener datos con procedimientos almacenados) 9 respuestas En las últimas semanas he escrito una serie de post sobre LINQ to SQL. Es un ORM integrado en .NET 3.5, y nos permite modelar bases de datos relacionales con clases de .NET. Podemos usar expresiones LINQ para consultar a la base de datos, actualiazarla, insertar y borrar datos. Aquí tenéis los enlaces a los otros post: Parte 1: Introducción a LINQ to SQL Parte 2: Definiendo el modelo de datos. Parte 3: Consultando la base de datos Parte 4: Actualizando la base de datos. Parte 5: Enlazar controles de interfaz de usuario con el ASP:LinqDatSource En estos posts vimos cómo usar expresiones LINQ para obtener programáticamente datos de la base de datos. En el post de hoy veremos cómo podemos usar los procedimientos almacenados (SPROCs) y las funciones definidas por el usuario (UDFs) con nuestro modelo LINQ to SQL. El post de hoy veremos el caso de los SPROCs para consultar y obtener datos de la base de datos. En el siguiente post de esta serie veremos cómo actualizar/insertar/borrar datos con SPROCs. ¿SPROC o no SPROC? Esa es la cuestión La pregunta sobre cuando usar el SQL dinámico generado por un ORM en lugar de procedimientos almacenados creando una capa de datos es causa de debates muy acalorados entre desarrolladores, arquitectos y DBAs. Mucha gente más lista que yo ha escrito sobre esto, así que no me decantaré ni por un lado ni por otro. LINQ to SQL es muy flexible, y puede usare para crear un modelo de datos cuyos objetos sean independientes del esquema de la base de datos, y puede encapsular lógica de negocio y reglas de validación que funcionan tanto si se usa SQL generado dinámicamente o a través de SPROCs. En el tercer post de esta serie, hablamos sobre cómo podemos escribir expresiones LINQ contra el modelo de LINQ to SQL como el siguiente código: Cuando escribimos expresiones LINQ como esta, LINQ to SQL ejecutará el SQL dinámico necesario para obtener los objetos de Product que cumplan las restricciones.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
LINQ to SQL (Parte 6 – Obtener datos con
procedimientos almacenados)
9 respuestas
En las últimas semanas he escrito una serie de post sobre LINQ to SQL. Es un ORM integrado en .NET 3.5, y nos
permite modelar bases de datos relacionales con clases de .NET. Podemos usar expresiones LINQ para consultar a la
base de datos, actualiazarla, insertar y borrar datos.
Aquí tenéis los enlaces a los otros post:
Parte 1: Introducción a LINQ to SQL
Parte 2: Definiendo el modelo de datos.
Parte 3: Consultando la base de datos
Parte 4: Actualizando la base de datos.
Parte 5: Enlazar controles de interfaz de usuario con el ASP:LinqDatSource
En estos posts vimos cómo usar expresiones LINQ para obtener programáticamente datos de la base de datos.
En el post de hoy veremos cómo podemos usar los procedimientos almacenados (SPROCs) y las funciones definidas por
el usuario (UDFs) con nuestro modelo LINQ to SQL. El post de hoy veremos el caso de los SPROCs para consultar y
obtener datos de la base de datos. En el siguiente post de esta serie veremos cómo actualizar/insertar/borrar datos con
SPROCs.
¿SPROC o no SPROC? Esa es la cuestión
La pregunta sobre cuando usar el SQL dinámico generado por un ORM en lugar de procedimientos almacenados creando
una capa de datos es causa de debates muy acalorados entre desarrolladores, arquitectos y DBAs. Mucha gente más lista
que yo ha escrito sobre esto, así que no me decantaré ni por un lado ni por otro.
LINQ to SQL es muy flexible, y puede usare para crear un modelo de datos cuyos objetos sean independientes del
esquema de la base de datos, y puede encapsular lógica de negocio y reglas de validación que funcionan tanto si se usa
SQL generado dinámicamente o a través de SPROCs.
En el tercer post de esta serie, hablamos sobre cómo podemos escribir expresiones LINQ contra el modelo de LINQ to
SQL como el siguiente código:
Cuando escribimos expresiones LINQ como esta, LINQ to SQL ejecutará el SQL dinámico necesario para obtener los