• Model


    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;
    
    namespace iFlytekDemo.Models
    {
        /// <summary>
        /// 城市实体
        /// </summary>
        public class City
        {
            /// <summary>
            /// 城市编号
            /// </summary>
            [Key]
            public int CityID { get; set; }
    
            /// <summary>
            /// 城市名称
            /// </summary>
            [Required]
            public string CityName { get; set; }
    
            /// <summary>
            /// 员工集合
            /// </summary>
            public virtual ICollection<Employee> Employees { get; set; }
        }
    }
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Data.Entity;
    using System.Linq;
    using System.Linq.Expressions;
    using System.Web;
    
    namespace iFlytekDemo.Models
    { 
        public class CityRepository : ICityRepository
        {
            iFlytekDemoContext context = new iFlytekDemoContext();
    
            public IQueryable<City> All
            {
                get { return context.Cities; }
            }
    
            public IQueryable<City> AllIncluding(params Expression<Func<City, object>>[] includeProperties)
            {
                IQueryable<City> query = context.Cities;
                foreach (var includeProperty in includeProperties) {
                    query = query.Include(includeProperty);
                }
                return query;
            }
    
            public City Find(int id)
            {
                return context.Cities.Find(id);
            }
    
            public void InsertOrUpdate(City city)
            {
                if (city.CityID == default(int)) {
                    // New entity
                    context.Cities.Add(city);
                } else {
                    // Existing entity
                    context.Entry(city).State = EntityState.Modified;
                }
            }
    
            public void Delete(int id)
            {
                var city = context.Cities.Find(id);
                context.Cities.Remove(city);
            }
    
            public void Save()
            {
                context.SaveChanges();
            }
    
            public void Dispose() 
            {
                context.Dispose();
            }
        }
    
        public interface ICityRepository : IDisposable
        {
            IQueryable<City> All { get; }
            IQueryable<City> AllIncluding(params Expression<Func<City, object>>[] includeProperties);
            City Find(int id);
            void InsertOrUpdate(City city);
            void Delete(int id);
            void Save();
        }
    }
    using System.ComponentModel.DataAnnotations;
    
    namespace iFlytekDemo.Models
    {
        /// <summary>
        /// 员工实体
        /// </summary>
        public class Employee
        {
            /// <summary>
            /// 员工编号
            /// </summary>
            [Key]
            public int EmployeeID { get; set; }
            
            /// <summary>
            /// 员工姓名
            /// </summary>
            [Required]
            public string EmployeeName { get; set; }
    
            /// <summary>
            /// 城市编号
            /// </summary>
            [Required]
            public int CityID { get; set; }
    
            /// <summary>
            /// 城市对象
            /// </summary>
            public virtual City City { get; set; }
        }
    }
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Data.Entity;
    using System.Linq;
    using System.Linq.Expressions;
    using System.Web;
    
    namespace iFlytekDemo.Models
    { 
        public class EmployeeRepository : IEmployeeRepository
        {
            iFlytekDemoContext context = new iFlytekDemoContext();
    
            public IQueryable<Employee> All
            {
                get { return context.Employees; }
            }
    
            public IQueryable<Employee> AllIncluding(params Expression<Func<Employee, object>>[] includeProperties)
            {
                IQueryable<Employee> query = context.Employees;
                foreach (var includeProperty in includeProperties) {
                    query = query.Include(includeProperty);
                }
                return query;
            }
    
            public Employee Find(int id)
            {
                return context.Employees.Find(id);
            }
    
            public void InsertOrUpdate(Employee employee)
            {
                if (employee.EmployeeID == default(int)) {
                    // New entity
                    context.Employees.Add(employee);
                } else {
                    // Existing entity
                    context.Entry(employee).State = EntityState.Modified;
                }
            }
    
            public void Delete(int id)
            {
                var employee = context.Employees.Find(id);
                context.Employees.Remove(employee);
            }
    
            public void Save()
            {
                context.SaveChanges();
            }
    
            public void Dispose() 
            {
                context.Dispose();
            }
        }
    
        public interface IEmployeeRepository : IDisposable
        {
            IQueryable<Employee> All { get; }
            IQueryable<Employee> AllIncluding(params Expression<Func<Employee, object>>[] includeProperties);
            Employee Find(int id);
            void InsertOrUpdate(Employee employee);
            void Delete(int id);
            void Save();
        }
    }
    using System;
    using System.Collections.Generic;
    using System.Data.Entity;
    using System.Linq;
    using System.Web;
    
    namespace iFlytekDemo.Models
    {
        public class iFlytekDemoContext : DbContext
        {
            // You can add custom code to this file. Changes will not be overwritten.
            // 
            // If you want Entity Framework to drop and regenerate your database
            // automatically whenever you change your model schema, add the following
            // code to the Application_Start method in your Global.asax file.
            // Note: this will destroy and re-create your database with every model change.
            // 
            // System.Data.Entity.Database.SetInitializer(new System.Data.Entity.DropCreateDatabaseIfModelChanges<iFlytekDemo.Models.iFlytekDemoContext>());
    
            public DbSet<iFlytekDemo.Models.City> Cities { get; set; }
    
            public DbSet<iFlytekDemo.Models.Employee> Employees { get; set; }
        }
    }
  • 相关阅读:
    harbor install & docker-compose
    ngx安装 (转)
    docker对镜像自动重启的设置
    docker安装脚本
    sql中的递归拼接
    【HC89S003F4开发板】 4端口消抖
    【HC89S003F4开发板】 6crc校验
    【HC89S003F4开发板】 3串口调试
    【HC89S003F4开发板】 1环境搭建
    用mkdocs在gitee码云上建立一个简单的文档博客
  • 原文地址:https://www.cnblogs.com/MarchThree/p/3676816.html
Copyright © 2020-2023  润新知