在Asp.net core 項目中操作Mysql數據庫


工程環境 :

  win10+asp.net core 2.1 + vs2017

步驟:

1 在vs中新建asp.net core  項目

 

2 在Nuget中為項目添加第三方包microsoft.visualstudio.web.codegeneration.design和pomelo.entityframeworkcore.mysql

  安裝完成后在項目的依賴項中的Nuget如下

  注意:如果此處新安裝的第三方包右側出現黃色警告,重啟即可消除。

 

3 在項目中的appsettings.json屬性中添加mysql數據庫的相關配置 

{ //增加連接數據庫的相關配置
  "ConnectionStrings": { "DefaultConnection": "Data Source=localhost;Port=3306;Database=mu_test;User Id=root;Password=123456" } }

 

4 新建DBContext.cs腳本,用來提供數據庫連接對象 

    public class DBContext { private string connectionString;//連接數據庫字符串

        public DBContext(string connection) { this.connectionString = connection; } /// <summary>
        /// 公有方法 - 提供連接數據庫的MySqlConnection對象 /// </summary>
        public MySqlConnection GetConnection() { return new MySqlConnection(connectionString); } }

 

5 在Starup.cs腳本中注冊數據庫對應服務

        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services) { services.Configure<CookiePolicyOptions>(options => { // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded = context => true; options.MinimumSameSitePolicy = SameSiteMode.None; }); //添加數據庫的相關服務
            string connectionString = Configuration.GetConnectionString("DefaultConnection"); services.Add(new ServiceDescriptor(typeof(DBContext), new DBContext(connectionString))); //添加mvc服務
 services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); //添加訪問本地文件所需的服務
            services.AddSingleton<IFileProvider>(new PhysicalFileProvider(Directory.GetCurrentDirectory())); }

 

 

6 新建一個DBManager.cs腳本,用來封裝一些簡單的數據庫操作方法

    public class DBManager { /// <summary>
        /// 執行sql命令語句 /// </summary>
        public static MySqlDataReader ExecutiveSqlCommand(DBContext dbContext, string commandString, out MySqlConnection myConnection) { MySqlDataReader result = null; myConnection = dbContext.GetConnection(); myConnection.Open(); MySqlCommand myCommand = new MySqlCommand(commandString); myCommand.Connection = myConnection; result = myCommand.ExecuteReader(); return result; } }

 

7 新建model類

    /// <summary>
    /// 對應數據庫中的t_order 表的數據結構 /// </summary>
    public class OrderModel { public int Id; public string order_no; }

  用來對應數據庫表t_order 中的數據

 

8 最后新建一個DBController.cs控制器,用來測試對某張表的查詢操作

 

 

9 運行,在瀏覽器輸入該路由訪問地址

 

  得到查詢結果:

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM