Asp .net core api+Entity Framework core 实现数据CRUD数据库中(附Git地址)
最近在学dotNetCore 所以尝试了一下api 这个功能
不多说了大致实现如下
1.用vs2017建立一个Asp.net Core Web 应用程序 在弹出的对话框中选择 Web API 项目名自己随便起,我用的是CoreAPI
2.创建一个文件夹,文件名为Models
3.添加一个类 Users.cs
public class Users
{
[Key]
public int ID { get; set; }
public string name { get; set; }
public string pwd { get; set; }
}
提示:ID 为主键,这里加不加特性[key]都一样,因为EF会自动识别主键,识别规则为如果不加特性
必须有个为int型的ID,外边的识别规则为“表名ID” 比如另一个表中把Users的ID当做外键 则写为UsersID 自动识别为外键。
4.在数据库中需要相应的添加一个Users表字段分别是ID主键(自增),name navarchar(50),pwd nvarchar(50)
5.建完之后项目结构如下
6.点击 Controllers文件夹
添加-->>控制器 在弹出的对话框中选择 Minimal Dependencies
点击添加
7.等待完成之后 再次点击Controllers文件夹 再次选择添加--》控制器,在弹出的对话框中选择最后一个
点击添加 在弹出的对话框中设置模型类为Users.cs
数据上下文类点击最右边的那个加号
在弹出的对话框中设置名字我这里设置为Users 点击添加即可。
点击添加即可完成
8.打开appsettings.json 文件 修改
Server为你的数据库的服务器地址 和database为你的数据库名字。
9.点击项目名称,右键点击属性 选择调试选项 在启动 URL中设置为api/Users(这里对大小写不敏感)
具体的设置URL的地址看你的controllers
特性 [Route("")]里边的字符串就是你的URL地址
10.这里可以直接启动项目了 基本算大功告成了。
二、关于测试
有两种方法 1.用ajax进行测试
2、用Postman或者 Fiddle等第三方测试工具测试
测试方法一:用ajax进行测试
我这里随便建了个项目 添加了一个html页面
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<input id="btn" type="button" value="test"/>
</body>
</html>
<script src="../../wwwroot/lib/jquery/dist/jquery.js"></script>
<script type="text/javascript">
$("#btn").click(function() {
$.ajax({
type: "get",
url: "http://localhost:56853/api/users",
success:function(data) {
alert(data[0].name+data[0].pwd);
}
});
}); </script>
用了ajax进行数据测试 测试结果如下
这里只进行了数据的获取;
添加 修改type:"post" data://json格式的数据
修改 type:"put" data://Json格式的数据 url:要添加路由的ID号
删除 type: "Delete" 不需要data url:需要添加路由的ID号
测试方法二 : 用第三方工具进测试 这里用postman进行测试
在地址栏里边输入URL 选取get类型 点击send 就获取到数据了
添加 第一步类型改为post 第二步点击body 第三步 在body中添加数据 第四步点击send 第五步 查看一下状态 是否为 200
这里进行查询一下
修改 按照下边的步骤 第一步类型改为put 第二步点击body 第三步在body中填入数据 第四步在url中添加ID号 第五步点击send 第六步查看状态 这里需要注意的是url需要路由ID号 如果没有会出现状态为404
验证一下
关于删除 第一步类型改为delete 第二步想要删除的数据的主键添加到URL中 第三步点击send 第四步检查状态
验证一下
到这里全部大功告成了,基础的东西基本都有了。
git 地址:https://github.com/1483523635/dotNetCoreAPIDemo.git
本人也是才学的有错误希望大家可以指正,互相学习。
Asp .net core api+Entity Framework core 实现数据CRUD数据库中(附Git地址)的更多相关文章
- ASP.NET Core 配置 Entity Framework Core - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core 配置 Entity Framework Core - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 配置 Entity Fram ...
- Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio » 读取关系数据
Reading related data¶ 9 of 9 people found this helpful The Contoso University sample web application ...
- Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio » 创建复杂数据模型
Creating a complex data model 创建复杂数据模型 8 of 9 people found this helpful The Contoso University sampl ...
- Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio » 更新关系数据
Updating related data¶ 7 of 7 people found this helpful The Contoso University sample web applicatio ...
- Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio »迁移
Migrations¶ 4 of 4 people found this helpful The Contoso University sample web application demonstra ...
- Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio » 排序、筛选、分页以及分组
Sorting, filtering, paging, and grouping 7 of 8 people found this helpful By Tom Dykstra The Contoso ...
- Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio » 增、查、改、删操作
Create, Read, Update, and Delete operations¶ 5 of 5 people found this helpful By Tom Dykstra The Con ...
- [UWP小白日记-11]在UWP中使用Entity Framework Core(Entity Framework 7)操作SQLite数据库(一)
前言 本文中,您将创建一个通用应用程序(UWP),使用Entity Framework Core(Entity Framework 7)框架在SQLite数据库上执行基本的数据访问. 准备: Enti ...
- 【EF Core】Entity Framework Core 批处理语句
在Entity Framework Core (EF Core)有许多新的功能,最令人期待的功能之一就是批处理语句.那么批处理语句是什么呢?批处理语句意味着它不会为每个插入/更新/删除语句发送单独的请 ...
随机推荐
- 《selenium2 python 自动化测试实战》(7)——定位一组对象
定位一组对象 定位一组对象——find_elements_by_...(),注意,这里是elements,复数.返回的结果是一个列表,我们取值的时候就要用列表取值的方式来获得自己想要的元素.需要注意的 ...
- Kubernetes基本概念
Kubernete模型中的核心概念.这些核心概念反映了Kubernetes设计过程中对应用容器集群的认知模型. 集群组件,从架构上看,Kubernetes集群(Cluster)也采用了典型的“主-从” ...
- oralce之 10046对Hash Join分析
前两天解决了一个优化SQL的case,SQL语句如下,big_table为150G大小,small_table很小,9000多条记录,不到1M大小,hash_area_size, sort_area_ ...
- Oracle 之 配置HugePages内存
HugePages是通过使用大页内存来取代传统的4kb内存页面,使得管理虚拟地址数变少,加快了从虚拟地址到物理地址的映射以及通过摒弃内存页面的换入换出以提高内存的整体性能.尤其是对于8GB以上的内存以 ...
- bzoj 3083 遥远的国度——树链剖分+线段树维护子树信息
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3083 int 的范围是 2^31 - 1 ,所以权值是不是爆 int 了…… O( nlog ...
- Web 漏洞分析与防御之点击劫持(三)
原文地址:Web 漏洞分析与防御之点击劫持(三) 博客地址:http://www.extlight.com 一.全称 点击劫持,顾名思义,用户点击某个按钮,却触发了不是用户真正意愿的事件. 二.原理 ...
- 如何用TortoiseSVN管理本地文档
1.安装(略) 2.搭建本地SVN版本管理数据库(服务器) (1)在本地磁盘上新建一个目录,例如E:\SVN,用来存储各种需要进行版本管理的文档:接着在该目录下再创建一个新的空目录,例如创建一个E:\ ...
- C语言中可变形参简单实例
以下程序主要包括三个主要函数: 一个最简单的可变形参函数实例: 一个简单的printf功能的实例: 一个打印字符串函数(辅助): 其中myPrintf函数,实现了printf的部分简单功能,并没有去实 ...
- Eclipse中创建新的Spring Boot项目
本文转载自:http://blog.csdn.net/clementad/article/details/51334064 简单几步,在Eclipse中创建一个新的spring Boot项目: 1.E ...
- 20165226 实验三 敏捷开发与XP实践
实验三 敏捷开发与XP实践 实验目的 一.安装alibaba 插件,解决代码中的规范问题.在IDEA中使用工具(Code->Reformate Code)格式化代码,研究一下Code菜单,比较功 ...