Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 17061|Respuesta: 0

[ASP.NET] Basado en. Desarrollo de arquitectura de tres capas de .LINQ a SQL

[Copiar enlace]
Publicado en 8/5/2015 15:47:22 | | | |

Tonterías escritas delante

Basado en. La arquitectura de tres niveles de .NET puede dividirse en las siguientes capas: capa Data Linq, capa de acceso a datos, capa de lógica de negocio y capa de presentación. Los símbolos de flecha en la Figura 1 a continuación ilustran la interacción entre las capas: la capa de acceso a datos hace referencia a la capa Data LINQ; La capa de lógica de negocio hace referencia a la capa de acceso a datos y a las clases de entidad en la capa Data LINQ. La capa de presentación se refiere a la capa de lógica de negocio así como a las clases de entidad en la capa Data LINQ.

La capa Data LINQ incluye principalmente clases de entidad y clases de contexto de datos. Normalmente, una clase de entidad corresponde a una tabla de la base de datos. Podemos crear instancias de clases de entidades que se transfieren entre diferentes capas como objetos de datos.

        Figura 1 Arquitectura de tres niveles de LINQ a SQL

A continuación se muestra un ejemplo de la ventana de inicio de sesión al crear un proyecto para introducir el desarrollo de arquitectura de tres niveles de LINQ a SQL

Preparación

1. Primero, necesitas una base de datos y una tabla de datos para almacenar el nombre de usuario y la contraseña de la persona registrada. Aquí se utiliza una base de datos SQL Server 2005. La estructura de la tabla de la base de datos se muestra en la Figura 2.

Figura 2 Tabla de usuarios de bases de datos

2. Abrir VS y crear un nuevo proyecto ---> otros tipos de proyectos---> soluciones de Visual Studio---> soluciones en blanco. Como se muestra en la Figura 3. (Se utiliza Visual Studio 2008 aquí)


Figura 3 Crear una solución en blanco

3. Añadir una biblioteca de clases. Haz clic derecho en la solución recién creada en el Explorador de Soluciones ---> añadir ---> nuevo proyecto ---> biblioteca de clases. Como se muestra en la Figura 4. El mismo método requiere añadir tres librerías, BLL, DAL y DataLinq, y una aplicación Windows Forms (si es un desarrollo de aplicación web, selecciona ASP.NET aplicación web) y llama UI.


Figura 4 Añadir un proyecto de biblioteca

La estructura tras la suma se muestra en la Figura 5. Al mismo tiempo, haz clic derecho en la interfaz y pon la interfaz como elemento de lanzamiento.


Figura 5 Diagrama de estructura del proyecto

Añadir una cita

En el Explorador de Soluciones, añade referencias a cada nivel. Capa BLL Seleccione Referencias --->clic derecho ---> añadir referencias. Como se muestra en la Figura 6. Añadir una referencia a System.Data.Linq. Al mismo tiempo, según la relación entre las capas mostrada en la Figura 1 anterior, añadir referencias de proyecto a DAL y DataLinq. De la misma manera, la capa DAL añade referencias de proyecto a System.Data.Linq y DataLinq, la capa DataLinq añade referencias a System.Data.Linq, y la capa UI añade referencias a System.Data.Linq y referencias a proyectos a BLL y DataLinq.


Figura 6 Añadir referencias de proyectos

Hasta ahora, se ha establecido una arquitectura de tres niveles. Lo siguiente es añadir sus clases correspondientes a cada capa.

1. Primero, la capa DataLinq. Haz clic derecho en DataLinq---> añade ---> nuevo proyecto---> selecciona la clase LINQ a SQL, como se muestra en la Figura 7.


Figura 7 Añadir un LINQ a la clase SQL

2. Tras completar la adición, se creará automáticamente un diseñador en blanco (archivo .dbml) con un enlace al Explorador de Servidores, así como el archivo dbml.layout asociado (archivo XML) y designer.cs archivo. Abre Server Explorer y establece un enlace a la base de datos.


Figura 8 Explorador de servidores abiertos

3. Conéctate a la base de datos. Selecciona la herramienta ---> añadir base de datos. Como se muestra en la Figura 9. Selecciona la base de datos recién creada y determina la base de datos de conexión. En este punto, la base de datos aparecerá en Server Explorer.


4. Selecciona el usuario de la tabla de datos que quieres usar, arrástralo y suelta sobre el diseñador, como se muestra en la Figura 10 a continuación. Guarda el archivo. Ahora, las clases DataContext y las clases de entidad con propiedades, métodos y métodos relacionados se han generado automáticamente.


Figura 10 Clase de usuario

Añadir capas de código

Capa DAL

Crea una nueva clase UserDAL y añade el siguiente código

//UserDAL.cs

usando DataLinq;
usando System.Data.Linq;

Espacio de nombres DAL
{
    clase pública UserDAL
    {
        private DataLinq.DBLinqDataContext objDataContext = new DataLinq.DBLinqDataContext();

        usuario público SelectRecordByID(string userid)
        {
            Prueba
            {
                return (de u en objDataContext.User donde u.Id == userid select u). Sencillo();
            }
            catch (excepción ex)
            {
                lanzar ex;
            }
        }
    }
}

Capa BLL

Crea una nueva clase UserBLL y añade el siguiente código

//UserBLL.cs

usando System.Data.Linq;
usando DataLinq;

Espacio de nombres BLL
{
    clase pública UserBLL
    {
        soldado DAL. UserDAL objUserDAL = new DAL. UserDAL();

        usuario público SelectRecordByID(string userid)
        {
            return objUserDAL.SelectRecordByID(userid);
        }
    }
}

Código de la capa de interfaz

//LoginForm.cs

BLL. privado UserBLL objUserBLL = nuevo BLL. UserBLL();
      
        vacío privado btnSubmit_Click(emisor de objetos, EventArgs e)
        {
            id de cadena = txtId.Text.Trim();
            cadena psd = txtPsd.Text.Trim();

            User localDataTable = objUserBLL.SelectRecordByID(id);

            if (localDataTable != null && localDataTable.Psd == psd)
            {
                MensajeBox.Show("Éxito");
            }
            si no,
            {
                MensajeBox.Mostrar("false");
            }
        }

En este punto, el código de la interfaz de inicio de sesión está completo. Puedes ejecutarlo para ver el efecto.






Anterior:Si ya tienes un DataReader abierto asociado a este comando, primero debes cerrarlo.
Próximo:LINQ obtiene un problema de retorno de valor de procedimiento almacenado en mi procedimiento almacenado
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com