núcleo .NET EF notas introductorias

Escribió recientemente un proyecto de fondo tarea de sondeo, entendiendo por la elección final de cuarzo, ya que es un proyecto, la primera es una capa de acceso a la base de datos, base de .NET ha estado fuera de 3,0, y blanco, también quiero tratar, o personales como marco ORM, hablando de marco ORM de Microsoft primero debe pensar en el ADO.NET Entity Framework, bien entonces me dejó hasta barra de entrada, donde voy a empezar con la aplicación de consola de la consola central .net para empezar.

Dado que es marco ORM, debemos primero tenemos Modelo (código primero utiliza este modo), el funcionamiento normal después de una comida

 

 Nuestras clases son las siguientes:

 

 público  de clase QuartJobLog 
    { 
        privada  int _ID = 0 ;
        privado  cadena _job_name;
        privado  cadena _job_result;
        privado  cadena _job_exception;
        privada  int _job_exetime;
        privada _job_exedate DateTime;
        privada  int _job_exestate;
        privada _addtime DateTime; 

        ///  <summary> 
        /// 主键
         ///  </ summary> 
        pública  int Id { get=> _Id; set => _id = valor; }
         ///  <summary> 
        ///  
        ///  </ summary> 
        pública  int jobid { get ; establecer ; }
         ///  <summary> 
        /// 任务名称
         ///  </ summary> 
        pública  cadena JOB_NAME { get => _job_name; set => _job_name = valor; }
         ///  <summary> 
        /// 执行的结果
         ///  </ summary> 
        pública  cadena Job_result { get => _job_result;SET => _job_result = valor;}
         ///  <summary> 
        /// información de anomalía para realizar tareas
         ///  </ resumen> 
        pública  Cadena Job_exception { GET => _job_exception; SET => _job_exception = valor;}
         ///  < resumen> 
        /// tiempo MS unidad
         ///  </ summary> 
        pública  int Job_exetime { GET => _job_exetime; SET => _job_exetime = valor;}
         ///  <summary> 
        /// fecha y hora de la ejecución de las tareas
         ///  <summary /> 
        pública{Job_exedate el DateTime GET => _job_exedate; SET => _job_exedate = valor;}
         ///  <summary> 
        /// resultado de la ejecución normal de 0, 1 anormal
         ///  </ resumen> 
        pública  int Job_exestate { GET => _job_exestate; SET = > _job_exestate = valor;}
         ///  <summary> 
        /// tiempo de ejecución de la tarea
         ///  </ resumen> 
        pública del DateTime addTime { GET => _addtime; SET => _addtime = valor;} 
    }

 

 

público  de clase QuartJobSchedule 
    { 
        privada  int _id = 0 ;
        privado  cadena _job_name;
        privado  cadena _job_assembly;
        privado  cadena _job_class;
        privado  cadena _job_corn;
        privado  int _job_type = 1 ;
        privada  int _job_execount = 0 ;
        privada _job_starttime DateTime;
        privada  int _job_state = 0 ;
        privada _addtime DateTime; 

        ///  <summary> 
        /// 主键
         ///  </ summary> 
        pública  int Id { get => _id; set => _id = valor; }
         ///  <summary> 
        /// 任务名称
         ///  </ summary> 
        pública  cadena JOB_NAME { get => _job_name; set => _job_name = valor; }
         ///  <summary> 
        /// 执行的方式的DLL名称
         ///  </ summary> 
        pública  cadena Job_Assembly { get=> _Job_assembly; SET => _job_assembly = valor;}
         ///  <summary> 
        /// método de realizar la clase
         ///  </ resumen> 
        pública  Cadena Job_Class { GET => _job_class; SET => _job_class = valor;}
         / //  <Resumen> 
        /// misión expresión maíz
         ///  </ resumen> 
        pública  cadena Job_Corn { GET => _job_corn; SET => _job_corn = valor;}
         ///  <summary> 
        /// tipo de tarea, el valor predeterminado es un simple, compleja 2
         /// </ Resumen> 
        pública  int JOB_TYPE { GET => _job_type; SET => _job_type = valor;}
         ///  <summary> 
        /// realizar el número total de tareas, 0 indica sin límite
         ///  </ resumen> 
        pública  int Job_Execount { GET => _job_execount; SET => _job_execount = valor;}
         ///  <summary> 
        /// tiempo de inicio de la tarea
         ///  </ resumen> 
        pública del DateTime Job_Starttime { GET => _job_starttime; SET => _job_starttime = valor;}
         /// <Resumen> 
        /// preparación tarea estado 0, 1 realiza, la tentativa 2, 3 se detiene, terminando 4.
         ///  </ resumen> 
        público  int Job_State { GET => _job_state; SET => _job_state = valor;}
         ///  <summary> 
        /// tarea de tiempo de creación
         ///  </ resumen> 
        pública del DateTime AddTime { GET => _addtime; SET => _addtime = valor;} 
    }

 A continuación, vamos añadiendo objeto de contexto

 público  de clase DataDBContext: DbContext 
    { 
        // pública DataDBContext (DbContextOptions <> DataDBContext opciones)
         //    : base (opciones)
         // {} 


        protegido  anulación  vacío OnConfiguring (DbContextOptionsBuilder optionsBuilder) 
        { 
            optionsBuilder.UseMySql ( " servidor de base de datos .; = = ** ***; User ID = ***; contraseña = **** " ); 
        } 


        Pública DbSet <QuartJobLog> QuartJobLogs { llegar ; establecer ; }
         Pública DbSet <QuartJobSchedule> QuartJobSchedules { get ;establecer ; } 


        Protegido  override  void OnModelCreating (ModelBuilder modelBuilder) 
        { 
            base de .OnModelCreating (modelBuilder); 

            modelBuilder.Entity <QuartJobLog> (entidad => { 

                entity.ToTable ( " QuartJobLog " ); 
                entity.HasKey (e => e.Id); 
            }); 


            modelBuilder.Entity <QuartJobSchedule> (entidad => { 

                entity.ToTable ( " QuartJobSchedule " ); 
                entity.HasKey (e =>  e.Id);
            });

           
        } 

    }

 Después de que el siguiente paso es la migración de la base de datos, aquí importamos Pomelo.EntityFrameworkCore.MySql, Microsoft.EntityFrameworkCore.Tools con herramientas de gestión NuGet, tales como el funcionamiento VS se ha completado, nos Nuget paquete de insumos programa de control de gestión

Migración de comandos, First_Migration 1.Add-migración, 2.Update Base de datos de seleccionar la opción correspondiente, y si la biblioteca de clases, a continuación, elija el proyecto de biblioteca de clases

 

 Después de generar con éxito la tabla correspondiente en la base de datos existe una

 

Supongo que te gusta

Origin www.cnblogs.com/Xty09/p/12492000.html
Recomendado
Clasificación