zoukankan      html  css  js  c++  java
  • 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; }
        }
    }
  • 相关阅读:
    判断客户端类型
    关于element-ui select组件change事件只要数据变化就会触发的解决办法
    log4net的基本配置及用法
    WCF自定义扩展,以实现aop!
    继承IDbConnection连接不同数据库
    MVC中你必须知道的13个扩展点
    Sql导出数据报错-->SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问
    "当前方法的代码已经过优化,无法计算表达式的值"的这个错误的解决方案!!!
    WCF中安全的那些事!!!
    Linq to sql 的语法
  • 原文地址:https://www.cnblogs.com/MarchThree/p/3676816.html
Copyright © 2011-2022 走看看