一、五种运行方式

1、点击IIS Express运行

实际上它开的是一个IIS Express服务器,就是说有一个小的代理服务器帮咱们运行,运行后就会启动一个IIS Express小型服务器,启动之后就会将Swagger运行起来了。这种方式只能在windows系统下去运行。

2、点击项目名运行

靠一个黑框启动,这个黑框可以跨平台,因为它内置了一个Kestrel服务器,是基于Kestrel服务器运行。Kestrel支持.NET Core的所有平台和版本。此外,它默认包含的ASP.NET Core新项目模板中,可以提供更好的请求处理性能。在Visual Studio中创建新项目时,项目会自动配置为在Kestrel中运行。

3、运行黑框

输入命令: Dotnet Run+项目名,可以跨平台,速度最快

4、生成文件

右键生成的时候,生成的文件在bin文件夹下Debug文件夹下net6.0文件夹下。罪证会生成一个.exe文件,双击,这个项目就能运行起来。这个情况下属于正式环境,这个时候Swagger运行不起来,因为生成完的代码不是开发模式

5、运行Dll文件

在net6.0文件夹下,在当前目录下敲cmd,输入命令dotnet + 项目名.dll

二、NetCore自带的依赖注入框架,有三种生命周期

①、Scope作用域,一个区域,有可能是一个方法。

在同一个Scope内只初始化一个实例,同一个请求,使用多次Server,就用的同一个实例。(日常用Scope)

builder.Services.AddScoped<UserInfoDal>();

②、Transient瞬时 每一次请求都是新的连接。

每个请求都会创建一个实例,同一个请求,使用多次Server,用的不同的实例。(轻量级无状态服务尽量使用Transient)

builder.Services.AddTransient<UserInfoBll>();

③、Singleton单例 每一次请求都是相同的。

整个应用程序生命周期内只创建一个实例。

builder.Services.AddSingleton<UserInfoBll>();

三、new和DI依赖注入

1、用new的方式来创建一个对象,缺点:类和类之间耦合性太高

2、DI构造函数依赖注入

.NET Core自带了IOC(控制反转)和DI(依赖注入)

将UserInfoDal类放到我们的容器里,通过构造函数的注入方式,把我们当前要用的对象注入进来。通过构造函数定义的名称拿到方法。

四、DTO: 数据传输对象

输入参数尽量不要使用实体,实体主要是用于对数据库进行交互

五、get和post的区别

  1.get请求一般是去取获取数据(其实也可以提交,但常见的是获取数据);post请求一般是去提交数据。

  2.get因为参数会放在url中,所以隐私性、安全性较差,请求的数据长度是有限制的,不同的浏览器和服务器不同,一般限制在 2~8K 之间,更加常见的是 1k 以内;

  post请求是没有的长度限制,请求数据是放在body中;

  3.get请求刷新服务器或者回退没有影响,post请求回退时会重新提交数据请求。

  4.get请求可以被缓存,post请求不会被缓存。

  5.get请求会被保存在浏览器历史记录当中,post不会。get请求可以被收藏为书签,因为参数就是url中,但post不能。它的参数不在url中。

  6.get请求只能进行url编码(appliacation-x-www-form-urlencoded),post请求支持多种(multipart/form-data等)。

深入理解

  1.GET 和 POST都是http请求方式, 底层都是 TCP/IP协议;通常GET 产生一个 TCP 数据包;POST 产生两个 TCP 数据包(但firefox是发送一个数据包),

  2.对于 GET 方式的请求,浏览器会把 http header 和 data 一并发送出去,服务器响应 200(返回数据)表示成功;

  而对于 POST,浏览器先发送 header,服务器响应 100, 浏览器再继续发送 data,服务器响应 200 (返回数据)。

六、MD5加密

不可逆,非常难以破解

七、幂等性

幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。就是用户对于同一操作发起的一次请求或者多次请求的结果是一致的,不会因为多次点击而产生了副作用。幂等函数,或幂等方法,是指可以使用相同参数重复执行,并能获得相同结果的函数。这些函数不会影响系统状态,也不用担心重复执行会对系统造成改变。

接口为什么要实现幂等?
前端重复提交选中的数据,后台只产生对应这个数据的一个反应结果。

[基础]VS Code 基础操作 命令符的更多相关文章

  1. [.net 面向对象编程基础] (8) 基础中的基础——修饰符

    [.net 面向对象编程基础] (8) 基础中的基础——修饰符 在进入C#面向对象核心之前,我们需要先对修饰符有所了解,其实我们在前面说到变量和常量的时候,已经使用了修饰符,并且说明了变量和常量的修改 ...

  2. Linux基础知识与基础命令

    Linux基础知识与基础命令 系统目录 Linux只有一个根目录,没有盘符的概念,文件目录是一个倒立的树形结构. 常用的目录功能 bin 与程序相关的文件 boot 与系统启动相关 cdrom 与Li ...

  3. vue.js初级入门之最基础的双向绑定操作

    首先在页面引入vue.js以及其他需要用到的或者可能要用到的插件(这里我多引用了bootstrap和jquery) 引用的时候需要注意文件的路径,准备工作这样基本就完成了,下面正式开始入门. vue. ...

  4. Java SE 基础:标识(zhì)符

    Java SE 基础:标识(zhì)符 一.标识符定义 标识符,就是给类.接口.方法.变量等起名字时的字符序列 二.组成规则与注意事项 1.组成规则 英文大小写字母 数组 $ 和 _ 2.注意事项 不 ...

  5. 基础DOM和CSS操作(三)

    CSS方法 jQuery不但提供了CSS的核心操作方法,比如.css()..addClass()等.还封装了一些特殊功能的CSS操作方法,我们分别来了解一下. width()方法 方法名 描述 wid ...

  6. 基础DOM和CSS操作(二)

    元素样式操作 元素样式操作包括了直接设置CSS样式.增加CSS类别.类别切换.删除类别这几种操作方法.而在整个jQuery使用频率上来看,CSS样式的操作也是极高的,所以需要重点掌握. CSS操作方法 ...

  7. 基础DOM和CSS操作(一)

    DOM简介 DOM是一种文档对象模型,方便开发者对HTML结构元素内容进行展示和修改.在JavaScript中,DOM不但内容庞大繁杂,而且我们开发的过程中需要考虑更多的兼容性.扩展性.在jQuery ...

  8. TP5常用命令符操作

    ThinkPHP5常用命令符操作   1. 模块自动生成指令:   默认会读取应用目录application下面的build.php作为自动   生成的定义文件,如果你的定义文件位置不同,则需要使用 ...

  9. Hadoop基础-通过IO流操作HDFS

    Hadoop基础-通过IO流操作HDFS 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.上传文件 /* @author :yinzhengjie Blog:http://www ...

随机推荐

  1. 【百度飞桨】手写数字识别模型部署Paddle Inference

    从完成一个简单的『手写数字识别任务』开始,快速了解飞桨框架 API 的使用方法. 模型开发 『手写数字识别』是深度学习里的 Hello World 任务,用于对 0 ~ 9 的十类数字进行分类,即输入 ...

  2. GFS分布式文件系统

    一.文件系统简介1.文件系统的组成接口:文件系统接口功能模块(管理.存储的工具):对对象管理里的软件集合对象及属性:(使用此文件系统的消费者)2.文件系统的作用从系统角度来看,文件系统时对文件存储设备 ...

  3. Excel用户如何打破内卷?只需要一个新软件,就能突破excel天花板

    还在死磕Excel吗?到底值不值得? 你看看,现在有多少excel培训班和培训课?网上各种EXCEL使用技巧教程也是满天飞.很多人为了提升Excel技能,不遗余力学习各种函数用法.VBA用法等等,最近 ...

  4. 我也是醉了,Eureka 延迟注册还有这个坑!

    Eureka 有个延迟注册的功能,也就是在服务启动成功之后不立刻注册到 Eureka Server,而是延迟一段时间再去注册,这样做的主要目的是因为虽然服务启动成功了,可能还有一些框架或者业务的代码没 ...

  5. Graph Theory の brief introduction

    一. 图的概念   1.定义   某类具体事物(顶点)和这些事物之间的联系(边),由顶点(vertex)和边(edge)组成, 顶点的集合V,边的集合E,图记为G = (V,E) 2.分类     1 ...

  6. linux文件校验

    最近在一次安装centos7程序中遇到了网速很卡的情况,不得已采用了百度云的离线下载功能,后来上传进入虚拟机内,结果遇到无法上传的情况,后来经过转码后才上传成功,详情http://www.cnblog ...

  7. 关于微信小程序生产环境体验版获取不到openId的问题(大坑)

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_119 我们知道openid是微信用户验证的重要标识,支付功能严重依赖这个东西,之前我们做微信支付的时候是通过在微信客户端直接调用官 ...

  8. 《DevOps围炉夜话》- Pilot - CNCF开源DevOps项目DevStream简介 - feat. PMC成员胡涛

    本文作者:aFlyBird0 个人主页:https://blog.aflybird.cn/ 开门见山 这是<DevOps围炉夜话>系列节目的第一期.在这期首秀中,我们邀请到了 DevStr ...

  9. 删除MySQL数据用户

    mysql删除用户的方法: 1.使用"drop user 用户名;"命令删除: 2.使用"delete from user where user='用户名' and ho ...

  10. ftp: connect: No route to host 解决方案

    实验环境: centos7 x2 server-vsftp:192.168.1.32 client:192.168.95 客户端测试访问 ftp服务器 报错:ftp: connect: No rout ...