本文档说明需在
asp.net core webAPI学习笔记(一) 创建WebAPI项目
的基础下进行
引入NuGet包 Entity Framework Core,因为使用的是SQL数据库,所以EFcore包含在了Microsoft.AspnetCore.App包中
一、修改appsettings.json,添加数据库连接字符串
- "ConnectionStrings": {
- "SqlConn": "Server=localhost;Database=YuanMa;User ID=sa;Password=123456;"
- }
二、创建S_user实体类
- public class S_user
- {
- public int Id {get; set; }
- public string Username {get; set; }
- public string Password {get; set; }
- public string Isdeleted {get; set; }
- }
三、创建DataContext类
- using Microsoft.EntityFrameworkCore;
- using Microsoft.Extensions.Configuration;
- namespace ApiTest.Models
- {
- public class DataContext: DbContext
- {
- public DataContext() : base() { }
- protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
- {
- // 获取appsettings.json配置信息
- var config = new ConfigurationBuilder()
- .SetBasePath(System.IO.Directory.GetCurrentDirectory())
- .AddJsonFile("appsettings.json")
- .Build();
- // 获取数据库连接字符串
- string conn = config.GetConnectionString("SqlConn");
- //连接数据库
- optionsBuilder.UseSqlServer(conn);
- }
- public DbSet S_user { get; set; }// 不区分大小写,名称必须与数据库表名相同
- }
- }
四、创建User控制器
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Threading.Tasks;
- using Microsoft.AspNetCore.Mvc;
- using Microsoft.Extensions.Logging;
- using VueApi.Model;
- using VueApi.Common;
- using Newtonsoft.Json;
-
- namespace VueApi.Controllers
- {
- [ApiController]
- [Route("api/[controller]")]
- public class UserController : ControllerBase
- {
- // 登录验证
- [Route("Login")]
- [HttpPost]
- public IActionResult Login(string username,string password)
- {
- using (var db = new DataContext())
- {
- var msg="";
- var user = db.Set().Where(p=>p.Username==username).FirstOrDefault();
- if (user == null)
- {
- msg="此用户不存在!";
- }
- else
- {
- if(Utils.MD5(password)!=user.Password)
- {
- msg="密码不正确";
- }
- else{
- msg="登录成功!";
- }
- }
- return Ok(msg);
- }
- }
-
- //查询列表
- [Route("Get")]
- [HttpGet]
- public List Get()
- {
- using (var db = new DataContext())
- {
- return db.S_user.ToList();
- }
- }
- }
- }
至此,asp.net core webAPI就能对接上sql server 数据库了,并且实现了用户登录验证方法和获取所有用户信息的api。