.NET COREデータベースの構成と使用

4945 ワード

.Netcoreは様々な方法でデータベースを操作することができます.以下、3つの方法を簡単に説明します.参考にしてください.
(1)以前のものであれば.Netframeworkでcoreに移行する前にframeworkの構成はすべて
Webconfigで行われていますappが必要ですconfigファイルで構成します.次の例ではエンタープライズライブラリを使用します.

  
  
    
(2) 还可以使用官网提供的Microsoft.EntityFrameworkCore进行数据库的使用。
首先在Startup.cs 文件中找到ConfigureServices方法,注入
    // Add framework services.   services
    services.AddDbContext(options =>
    options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

    //DB
    services.AddDbContext(options =>
    options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

    services.AddIdentity()
    .AddEntityFrameworkStores()
    .AddDefaultTokenProviders();
    ApplicationDbContext 
    public class ApplicationDbContext  : IdentityDbContext
    {
        public ApplicationDbContext(DbContextOptions options)
            : base(options)
        {
        }
        protected override void OnModelCreating(ModelBuilder builder)
        {
            base.OnModelCreating(builder);
        }
    }
      ApplySysContext 
    public class ApplySysContext : DbContext
    {
        public ApplySysContext(DbContextOptions options) : base(options)
        {
        }
        public DbSet Login { get; set; }
        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
        }
    }
	  ApplicationUser 
	        public class ApplicationUser : IdentityUser
        {
        }
		
	   controller ApplySysContext  ,     dbset      ,       :
	
	    /// 
        /// 
        /// 
        /// T
        /// Boolean
	    public Boolean Insert(T entity) where T : class 
        {
            try
            {
                _db.Set().Add(entity);
                _db.SaveChanges();
                return true;
            }
            catch (Exception e)
            {
                throw e;
            }
            
        }

        /// 
        /// 
        /// 
        /// T
        /// Boolean
        public Boolean BatchInsert(List entityList) where T : class
        {
            try
            {
                foreach (T entity in entityList)
                {
                    _db.Set().Add(entity);
                }
                _db.SaveChanges();
                return true;
            }
            catch (Exception e)
            {
                throw e;
            }

        }

        /// 
        /// 
        /// 
        /// T
        /// Boolean
        public Boolean Update(T entity) where T : class
        {
            try
            {
                _db.Set().Update(entity);
                _db.SaveChanges();
                return true;
            }
            catch (Exception e)
            {
                throw e;
            }
        }

        /// 
        /// 
        /// 
        /// T
        /// Boolean
        public Boolean Delete(T entity) where T : class
        {
            try
            {
                _db.Set().Remove(entity);
                _db.SaveChanges();
                return true;
            }
            catch (Exception e)
            {
                throw e;
            }
        }

        /// 
        /// 
        /// 
        /// T
        /// Boolean
        public T FindByPK(object[] key) where T : class
        {
            try
            {
                return _db.Set().Find(key);
            }
            catch (Exception e)
            {
                throw e;
            }
        }