zoukankan      html  css  js  c++  java
  • .NET Core连接数据库

    DbContext:

    using Microsoft.EntityFrameworkCore;
    using Microsoft.Extensions.Configuration;
    using System;
    using WebApi.Models;
    
    namespace WebApi.Data
    {
        public class DataMgrContext : DbContext
        {
            public readonly static IConfiguration configuration;
            static DataMgrContext()
            {
                configuration = new ConfigurationBuilder()
                .SetBasePath(Environment.CurrentDirectory)
                .AddJsonFile("appsettings.json", true, true)
                .AddInMemoryCollection()
                .Build();
            }
            public static string connectionString
            {
                get { return configuration["ConnectionStrings:Default"]; }
            }
    
            public DataMgrContext(DbContextOptions<DataMgrContext> options)
                : base(options)
            {
            }
            public DataMgrContext() { }
            
            public DbSet<SysUser> SysUsers{ get; set; }
            public DbSet<Permission> Permissions { get; set; }
            public DbSet<Role> Roles { get; set; }
            public DbSet<RolePermission> RolePermissions { get; set; }
            protected override void OnModelCreating(ModelBuilder modelBuilder)
            {
                //映射数据库表名
                //modelBuilder.Entity<Role>().ToTable("Role");
            }
            protected override void OnConfiguring(DbContextOptionsBuilder options)
            {
                options.UseSqlServer(connectionString);
            }
        }
    }
    

    appSettings.json

    "ConnectionStrings": {
        "Default": "Data Source=.;Initial Catalog=efcoretest;User ID=sa;Password=111111"
      },
    

    Startup.cs

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddDbContext<DataMgrContext>();//注入数据库服务
        //...
    }
    

      使用

    using (var db = new DataMgrContext())
    {
        db.Blogs.Add(dto);
        db.SaveChanges();
    }
    
    //2
    private readonly DataMgrContext db;
    public BlogController(DataMgrContext context)
    {
        db = context;
    }
    

      

  • 相关阅读:
    day09页面的声明周期函数
    day8小程序的运行环境与基本架构
    day09小程序复习
    day08前后端交互
    day07获取图片
    day07获取用户地址信息
    MySQL 主从同步延迟的原因及解决办法
    升级Oracle 19c经验: TTS 在使用datapump导matadata时EXCLUDE=STATISTICS 不启作用
    12c,19c自动kill长时间未活动会话特性
    SuSE11单实例二进制安装MySQL5.7
  • 原文地址:https://www.cnblogs.com/xsj1989/p/15379350.html
Copyright © 2011-2022 走看看