ASP.NET Core微服务(一)——【完整API搭建及访问过程】:

环境:win10专业版+vs2019+sqlserver2014/2019

对应练习demo下载路径(1积分):【https://download.csdn.net/download/feng8403000/15134527】

对应练习sql下载路径(0积分):【https://download.csdn.net/download/feng8403000/15134699】

1、创建API项目

2、项目层级以及作用

3、引入数据库·这里采用的是sqlserver2014版本,如果是2019以上版本,数据库连接的地址请勿使用【127.0.0.1】,或者用【.】通用即可

3.1、添加NuGe程序包

3.2、添加4个需要的包

安装步骤:

四个包如上安装即可,查看是否安装成功

3.3、通过【工具】->【NuGet包管理器】->【程序包管理器控制台】

自动连接写法·sqlserver2019【Data Source=.】

Scaffold-Dbcontext 'Data Source=127.0.0.1;Initial Catalog=数据库name;Integrated Security=True;' Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context 自定义nameContext

密码链接写法·sqlserver2019【Data Source=.】

Scaffold-Dbcontext 'Data Source=127.0.0.1;Initial Catalog=数据库name;User Id=用户名;Password=密码;' Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context 自定义nameContext

这样,我们就有了可以操作的EF对象了。

4、添加【Startup.cs】服务配置

命名空间需求:

using Microsoft.EntityFrameworkCore;using WebApiDemo.Models;

所需代码:

services.AddDbContext<Girl1804Context>(options =>{options.UseSqlServer(Configuration.GetConnectionString("Girl1804DB"));});

添加位置:

【appsetting.json】配置文件配置:

配置字符串:

"ConnectionStrings": {"Girl1804DB": "Data Source=127.0.0.1;Initial Catalog=girl1804;Integrated Security=True;"},

配置位置:

账号密码的方式:【Data Source=服务器地址;Initial Catalog=数据库name;User Id=用户名;Password=密码;】

5、EF,通过构造方法注入测试

5.1、添加【api控制器】

5.2添加构造方法注入EF生成的类【Girl1804Context】

5.3、配置路由【[Route("api/[controller]/[action]")]】以及创建查询测试EF

public object GetInfo() {return db.GirlSixes.ToList();}

5.4、启动项目,并访问【api接口】,路径为:【http://localhost:5000/api/Test/GetInfo】

【Ctrl+F5】启动

查看浏览器:默认打开路径应为【http://localhost:5000/weatherforecast】

输入:【http://localhost:5000/api/Test/GetInfo】进行数据访问测试。

6、增加函数【Add】·在【TestController】内完成

        /// <summary>/// 添加方法/// </summary>/// <param name="nickName"></param>/// <param name="introduce"></param>/// <returns></returns>public bool Add(string nickName,string introduce) {GirlSix g = new GirlSix();g.Id = System.Guid.NewGuid().ToString("N");g.CreateDate = DateTime.Now;g.NickName = nickName;g.Introduce = introduce;db.GirlSixes.Add(g);int rows = db.SaveChanges();return rows > 0 ?true:false;}

7、修改【SelectById】&【Update】函数·在【TestController】内完成

        /// <summary>/// 单个查询/// </summary>/// <param name="id"></param>/// <returns></returns>public object SelectById(string id) {return db.GirlSixes.Where(o => o.Id == id).SingleOrDefault();}/// <summary>/// 修改方法/// </summary>/// <param name="id"></param>/// <param name="nickName"></param>/// <param name="introduce"></param>/// <returns></returns>public bool Update(string id,string nickName, string introduce) {GirlSix girlSix = db.GirlSixes.Where(o => o.Id == id).SingleOrDefault();if (girlSix == null) {return false;}girlSix.NickName = nickName;girlSix.Introduce = introduce;int rows = db.SaveChanges();return rows > 0 ? true : false;}

8、删除函数【Del】·在【TestController】内完成

        /// <summary>/// 删除方法/// </summary>/// <param name="id"></param>/// <returns></returns>public bool Del(string id) {GirlSix girlSix = db.GirlSixes.Where(o => o.Id == id).SingleOrDefault();if (girlSix == null){return false;}db.GirlSixes.Remove(girlSix);int rows = db.SaveChanges();return rows > 0 ? true : false;}

9、postman测试·【Ctrl+F5】启动后,根据对应的接口路径进行测试。

9.1查询所有测试:

9.2、增加测试

9.3、修改测试

9.4、删除测试

10、总结

a)、EF包4个,别错喽

b)、根据对应的数据库使用对应的引入方式,本地用直接连,远程用账号密码连。

c)、在ASP.NET Core中引入的EF如果要使用多表联合查询建议使用Linq进行操作。

d)、在修改操作时直接SaveChanges操作即可。

希望此文对大家有所帮助,后续会编写

ASP.NET Core微服务(二)——【ASP.NET Core Swagger配置】、

ASP.NET Core微服务(三)——【跨域配置】、

ASP.NET Core微服务(四)——【静态vue使用axios解析接口】、

ASP.NET Core微服务(五)——【vue脚手架解析接口】、

ASP.NET Core微服务(六)——【redis操作】、

ASP.NETCore微服务(七)——【docker部署linux上线】

等文章。

此文标题为ASP.NET Core微服务(一)——【完整API搭建及访问过程】

请关注,后续内容很快更新。

ASP.NET Core微服务(一)——【完整API搭建及访问过程】相关推荐

  1. ASP.NET Core微服务(七)——【docker部署linux上线】(RDS+API接口测试部分)

    ASP.NET Core微服务(七)--[docker部署linux上线]: 本文测试采用阿里云的RDS(sqlserver服务器)+ECS(linux服務器)进行测试,由于是测试,[按量付费]买个最 ...

  2. ASP.NET Core微服务(二)——【ASP.NET Core Swagger配置】

    ASP.NET Core微服务(二)--[ASP.NET Core Swagger配置]: 环境:win10专业版+vs2019+sqlserver2014/2019 ASP.NET Core微服务( ...

  3. 【新书推荐】《ASP.NET Core微服务实战:在云环境中开发、测试和部署跨平台服务》 带你走近微服务开发...

    <ASP.NET Core 微服务实战>译者序:https://blog.jijiechen.com/post/aspnetcore-microservices-preface-by-tr ...

  4. ASP.NET Core微服务(六)——【redis操作】

    ASP.NET Core微服务(六)--[redis操作]: Redis 是一个高性能的key-value数据库. redis的出现,很大程度补偿了memcached这类key/value存储的不足, ...

  5. ASP.NET Core微服务(五)——【vue脚手架解析接口】

    ASP.NET Core微服务(五)--[vue脚手架解析接口]: 后台接口请参照:ASP.NET Core微服务(三)--[跨域配置]:[https://blog.csdn.net/feng8403 ...

  6. ASP.NET Core微服务(四)——【静态vue使用axios解析接口】

    ASP.NET Core微服务(二)--[ASP.NET Core Swagger配置]: 环境:win10专业版+vs2019+sqlserver2014/2019+vsCode+在线资源 boot ...

  7. ASP.NET Core微服务(三)——【跨域配置】

    ASP.NET Core微服务(三)--[跨域配置] 对应练习demo(跨域)下载路径(1积分):[https://download.csdn.net/download/feng8403000/151 ...

  8. ASP.NET Core 微服务初探[1]:服务发现之Consul

    ASP.NET Core 微服务初探[1]:服务发现之Consul 在传统单体架构中,由于应用动态性不强,不会频繁的更新和发布,也不会进行自动伸缩,我们通常将所有的服务地址都直接写在项目的配置文件中, ...

  9. .Net Core微服务入门——Ocelot API网关接入(一)

    .Net Core微服务入门--Ocelot API网关接入 上一章我们测试了一个简单的Client 端访问Consul实现服务注册与发现,但是现实生产环境我们直接通过Client自行连接Consul ...

最新文章

  1. java field setfont_Java JTextField.setFont方法代碼示例
  2. 平流式初沉池贮砂斗计算_给排水之市政污水处理构筑物:平流式、曝气式、旋流式三大沉砂池...
  3. .net 文件类型 及说明
  4. Java虚拟机——类加载机制
  5. 大规模神经网络最新文献综述:训练高效DNN、节省内存使用、优化器设计
  6. python3学习笔记10(迭代器和生成器)
  7. WebClient UI create a hidden form and submit
  8. [js] 请使用js实现商品的自由组合,并说说你的思路
  9. 顺序结构,选择结构,反编译
  10. MySQL关闭Enterprise Server源码
  11. es6 import 命令
  12. Flex利用Datagrid来设置全选和单选
  13. mysql的瓶颈_MySQL 瓶颈分析及优化
  14. Symfony2Book16:Symfony2内部03-事件调度
  15. c语言函数.pdf文档,c语言库函数表.pdf
  16. php-emoji使用微信,微信开发中emoji表情的问题
  17. Django单元测试类和测试数据回滚
  18. 2019届华为秋招面试
  19. Seagull island
  20. 无懈可击的Web设计:使用HTML 5和CSS 3提高网站的灵活性与适应性(第3版)

热门文章

  1. qimage加载bmp图片_批量修改图片大小,我发现了最简单的方法!
  2. linux cpp vscode远程调试 的配置
  3. 你多久更新一次简历,决定了你的收入多久能提升
  4. [linux] 进程五状态模型
  5. 在Jenkins中获取GitHub对应Repository的Resource Code
  6. java课程之团队开发冲刺1.4
  7. 分布式系统关注点(9)——想通关「限流」?只要这一篇
  8. 使用java多线程分批处理数据工具类
  9. 反骨仔的 2016 年度全文目录索引
  10. win2003配置apache2.2下,php页面出现乱码的解决方法