找回密码
 会员注册
查看: 124|回复: 0

asp.net core webAPI学习笔记(四)连接SQL数据库

[复制链接]

1389

主题

5

回帖

496万

积分

管理员

积分
4962992
发表于 2024-2-29 08:13:04 | 显示全部楼层 |阅读模式

IDE 版本:Visual Studio 2017 15.9.7
asp.net core 版本 2.1.1

本文档说明需在
asp.net core webAPI学习笔记(一)项目搭建
的基础下进行

引入NuGet包 Entity Framework Core,因为使用的是SQL数据库,所以EFcore包含在了Microsoft.AspnetCore.App包中
修改appsettings.json,添加数据库连接字符串

  1. "ConnectionStrings": {
  2. // 数据库地址 数据库名 帐号 密码
  3. "SqlConn": "Server=localhost;Database=testdb;User ID=sa;Password=sa.123;"
  4. }
复制代码

在这里插入图片描述

创建Book实体类

  1. namespace ApiTest.Models
  2. {
  3. public class Book
  4. {
  5. public string ID { set; get; }
  6. public string name { set; get; }
  7. public string price { set; get; }
  8. }
  9. }
复制代码

创建DataContext类

  1. using Microsoft.EntityFrameworkCore;
  2. using Microsoft.Extensions.Configuration;
  3. namespace ApiTest.Models
  4. {
  5. public class DataContext: DbContext
  6. {
  7. public DataContext() : base() { }
  8. protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
  9. {
  10. // 获取appsettings.json配置信息
  11. var config = new ConfigurationBuilder()
  12. .SetBasePath(System.IO.Directory.GetCurrentDirectory())
  13. .AddJsonFile("appsettings.json")
  14. .Build();
  15. // 获取数据库连接字符串
  16. string conn = config.GetConnectionString("SqlConn");
  17. //连接数据库
  18. optionsBuilder.UseSqlServer(conn);
  19. }
  20. public DbSet<Book> book { get; set; } // 不区分大小写,名称必须与数据库表名相同
  21. }
  22. }
复制代码

创建Book控制器

  1. using ApiTest.Models;
  2. using Microsoft.AspNetCore.Cors;
  3. using Microsoft.AspNetCore.Mvc;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. namespace ApiTest.Controllers
  7. {
  8. [Route("api/[controller]")]
  9. [EnableCors("cors")] //设置跨域处理的 代理
  10. //[ApiController]
  11. public class BookController : ControllerBase
  12. {
  13. // GET: api/Tiles
  14. [HttpGet]
  15. public OkObjectResult Get()
  16. {
  17. DataContext db = new DataContext();
  18. List<Book> pList = db.book.ToList();
  19. return Ok(from p in pList
  20. select new
  21. {
  22. id = p.ID,
  23. name = p.name,
  24. price = p.price
  25. });
  26. }
  27. }
  28. }
复制代码

来源:https://blog.csdn.net/qq_22267353/article/details/88183410
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?会员注册

×
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2024-12-27 00:10 , Processed in 0.601840 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表