(獲取本節(jié)完整代碼 GitHub/chizijijiadami/.net)
0缩举、寫在前面
上一篇文章我們已經(jīng)成功寫出了返回固定數(shù)據(jù)的接口衣赶,現(xiàn)在我們就來連接數(shù)據(jù)庫诊赊,從數(shù)據(jù)庫里獲取信息并在接口里返回。這里給出的項目代碼是在正式項目里使用的府瞄。
1碧磅、安裝MySQL數(shù)據(jù)庫
之前看過 一、vue入門基礎(chǔ)開發(fā)—手把手教你用vue開發(fā) 這篇文章下載過 phpstudy 的小伙伴請打開路徑 phpstudy_pro\Extensions 遵馆,里面已經(jīng)有了一個mysql數(shù)據(jù)庫鲸郊,默認(rèn)賬戶密碼都是 root 。沒有的小伙伴請參考文章 菜鳥教程-win10安裝mysql詳細(xì)教程货邓,寫的非常詳細(xì)秆撮。
2、連接數(shù)據(jù)庫
修改 Controllers/HomeController.cs换况,數(shù)據(jù)庫信息在正式項目中放到 webconfig或者 配置文件中职辨。
......
+ using MySql.Data.MySqlClient;
.....
+ public JsonResult MysqlDatabase()
+ {
+ String connetStr = "server=localhost;port=3306;user=root;password=root;";
+ String isConnection = "否";
+ MySqlConnection conn = new MySqlConnection(connetStr);
+ try
+ {
+ conn.Open();
+ isConnection = "是";
+ }
+ catch (MySqlException ex)
+ {
+ Console.WriteLine(ex.Message);
+ }
+ finally
+ {
+ conn.Close();
+ }
+ return Json(new { isConnection = isConnection}, JsonRequestBehavior.AllowGet);
+ }
修改 Views/Home/Test.cshtml
+ $.ajax({
- url: '/home/json1',
+ url: '/home/MysqlDatabase',
dataType: 'json',
success(data) {
console.log(data)
}
})
3、數(shù)據(jù)表操作
(1)安裝 Navicat for MySQL
為了可視化管理mysql我們安裝 Navicat for MySQL戈二,完成后新建連接舒裤,并測試連接成功。
(2)新建數(shù)據(jù)庫表
右擊選擇添加數(shù)據(jù)庫
(3)獲取數(shù)據(jù)
新建Model/User.cs
using System;
namespace MyWebApp.com.Models
{
public class User
{
public int? ID { get; set; }
public String Name { get; set; }
public int? Age { get; set; }
}
}
修改 Controllers/HomeController.cs腾供,在正式項目中這種數(shù)據(jù)處理一般是寫在Model或者庫類里面的。
......
+ using MyWebApp.com.Models;
......
public JsonResult MysqlDatabase()
{
- String connetStr = "server=localhost;port=3306;user=root;password=root;";
+ String connetStr = "server=localhost;port=3306;user=root;password=root;database=testnet;";
String isConnection = "否";
+ String sql = "select * from link;";
+ List<User> UserLists = new List<User>();
MySqlConnection conn = new MySqlConnection(connetStr);
try
{
conn.Open();
isConnection = "是";
+ MySqlCommand cmd = new MySqlCommand(sql, conn);
+ MySqlDataReader reader = cmd.ExecuteReader();
+ while (reader.Read())
+ {
+ User UserList = new User();
+ UserList.ID = Convert.ToInt32(reader["id"]);
+ UserList.Name = reader["name"].ToString();
+ UserList.Age = Convert.ToInt32(reader["age"]);
+ UserLists.Add(UserList);
+ }
+ reader.Close();
}
catch (MySqlException ex)
{
Console.WriteLine(ex.Message);
}
finally
{
conn.Close();
}
- return Json(new { isConnection = isConnection }, JsonRequestBehavior.AllowGet);
+ return Json(new { isConnection = isConnection,list= UserLists }, JsonRequestBehavior.AllowGet);
保存運行一下鲜滩,如下圖伴鳖,成功獲取數(shù)據(jù)。
(4)ExecuteNonQuery()——刪改查
4绒北、正式項目的使用
新建庫類黎侈,在解決方案上右擊選擇新建項目察署,這么可以把業(yè)務(wù)處理闷游、類跟數(shù)據(jù)處理都獨立開。
連接MySQL數(shù)據(jù)庫到此結(jié)束业簿。
感謝閱讀瘤礁,喜歡的話點個贊吧:)
更多內(nèi)容請關(guān)注后續(xù)文章。梅尤。柜思。