Dotnet初探: 尝试使用 dotnet6 的miniapi
引子
最近我们学校要求我们使用dotnet实现一个登录功能,由于我们学校的教程老旧(万年经典asp .net 4.x,慢的要死),我看有高性能又免费的Dotnet6不用,还又要退回几年前,于是决定另开炉灶——自己看看微软文档实现。
环境
关于开发环境,我这里直接选用 vs2022 社区版,如果你有钱也可以选其他版本;当然,如果你感觉vs太臃肿,也可以使用 vscode 或者 rider。安装完工具后,我们直接上微软.NET官位下载它6.x的 SDk,由于我是windows系统,所以我下载msi的安装包,如果你是其他系统,可以看微软的安装文档。
项目初始
创建
直接用vs创建一个webapi项目,注意在创建的时候去掉那个带“控制器”什么的对号就可以了。如果是vscode,直接执行命令 dotnet new webapi -minimal -o 项目目录名称,当然,不带这个目录默认在当前目录创建。
项目概述
.Net6 更新了一个顶级语句,可以像python一样快速创建应用,不需要像Java那样啰嗦的创建一个类,如果需要其他库,直接在第一行 using xxx; 引用即可。
项目的 properites 目录下有一个 xxx.json 文件,它是管理项目启动的url的文件,不明白url的小伙伴请自己百度。
program.cs 文件是我们的程序入口,一般顶级语句写在这里,其他文件老老实实写类就可以了。如果需要多文件编程,直接放进去一个命名空间就完事了,然后引用它就能用了。
这个文件里面的代码很多,我们初学者一下子很难看明白,不过还好有微软。
var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();
这几行代码用来声明一个web程序,专业点说就是注册一个web程序
app.MapGet("/", () => "Hello World!");
app.Run();
这几行代码用来设置供用户访问的url地址,当然,这里用了get请求方法,你也可以改成post等,也可以叫设置路由(一看就是机器翻译的——不说人话),然后第二行代码让程序运行起来。
项目运行
直接点这个绿色的按钮就可以了,或者执行 dotnet run
Dotnet初探: 尝试使用 dotnet6 的miniapi的更多相关文章
- 【转】vscode调试运行c#详细操作过程
[转]vscode调试运行c#详细操作过程 主要命令: //路径跳转cd //新建项目dotnet new console -o 路径 //运行dotnet run //用于发布exe<Runt ...
- [译]试用新的System.Text.Json API
译注 可能有的小伙伴已经知道了,在.NET Core 3.0中微软加入了对JSON的内置支持. 一直以来.NET开发者们已经习惯使用Json.NET这个强大的库来处理JSON. 那么.NET为什么要增 ...
- .NET 2.0 参考源码索引
http://www.projky.com/dotnet/2.0/Microsoft/CSharp/csharpcodeprovider.cs.htmlhttp://www.projky.com/do ...
- 尝试在mac上用dotnet cli运行asp.net core示例程序
自从知道微软用dotnet cli取代dnx之后,一直在等dotnet cli支持asp.net core... 昨天看到这篇新闻(ASP.NET Core 1.0 Hello World)后,才知道 ...
- DotNet源码学习-HASHSET(初探)
命名空间:System.Collections.Generic 先看一下官方说明:类提供了高级的设置操作.集是不包含重复元素的集合,其元素无特定顺序. HashSet <T>对象的容量是对 ...
- RxJava尝试取代Handler初探
在之前的一篇文章中,我们探究了RxJava的使用方法,详细请看https://www.cnblogs.com/yanyojun/p/9745675.html 根据扔物线大神的描述,如果用一个词来概括R ...
- DOTNET Core MVC(二)路由初探
搁置了几天,工作忙的一塌糊涂,今天终于抽空来继续看看MVC的知识.先来看看MVC的路由是如何处理的.以下为替代的路由: app.UseEndpoints(endpoints => { endpo ...
- 从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之九 || 依赖注入IoC学习 + AOP界面编程初探
更新 1.如果看不懂本文,或者比较困难,先别着急问问题,我单写了一个关于依赖注入的小Demo,可以下载看看,多思考思考注入的原理: https://github.com/anjoy8/BlogArti ...
- 免费开源的DotNet任务调度组件Quartz.NET(.NET组件介绍之五)
很多的软件项目中都会使用到定时任务.定时轮询数据库同步,定时邮件通知等功能..NET Framework具有“内置”定时器功能,通过System.Timers.Timer类.在使用Timer类需要面对 ...
- .NET文件并发与RabbitMQ(初探RabbitMQ)
本文版权归博客园和作者吴双本人共同所有.欢迎转载,转载和爬虫请注明原文地址:http://www.cnblogs.com/tdws/p/5860668.html 想必MQ这两个字母对于各位前辈们和老司 ...
随机推荐
- Post 大小超出允许的限制
原因大体找到了: 除了项目最外层有web.config, 在 Pages页面下还有一个web.config配置文件, 遍历顺序为 :aspx 页面同级目录-->逐级父级目录-->根目录-- ...
- 表格CSS
.tab{border:1px solid #cad9ea;color:#666;} .tab th {background-image: url(th_bg1.gif);background-rep ...
- 狂神的学习笔记demo0607
Ctrl+D 复制此行到下一行 sout 快捷打出System.out.println(); 修饰符 static 静态的 finalf 常量 变量的命名规范 见名知意 类成员变量:首字母小写和驼 ...
- Cloneable的使用
Cloneable的使用 在开发过程中,拷贝实例是常见的一种操作,如果一个类中的字段较多,而我们又采用在客户端中逐字段复制的方 法进行拷贝操作的话,将不可避免的造成客户端代码繁杂冗长,而且也无法对类中 ...
- Svn安装客户端鼠标右键报错SendRpt.exe not found
kill 掉 重启资源管理器就好了
- C++ condition_variable
一.使用场景 在主线程中创建一个子线程去计数,计数累计100次后认为成功,并告诉主线程:主线程收到计数100次完成的信息后继续往下执行 二.条件变量的成员函数 wait:当前线程调用 wait() 后 ...
- 转贴:阿里云ESC-centos7服务器小白搭建FTP教程
1. 安装vsftpd yum -y install vsftpd 2. 检查vsftpd是否安装成功 rpm -q vsftpd vsftpd-3.0.2-29.el7_9.x86_64 # 检查方 ...
- .bat 脚本替换文件内容
rem 定义变量延迟环境,关闭回显 @echo off&setlocal enabledelayedexpansion rem 读取a.txt所有内容 for /f "eol=* t ...
- WordPress安全方案
一.WordPress介绍WordPress是一款世界级的网站内容管理系统,因其系统结构科学合理,功能强大,操作简单,拥有海量用户.和其他CMS一样,安全漏洞也是其无法避免的问题.虽然官方不断发布补丁 ...
- 使用VSCode调试C#时,Console.ReadLine()弹出命令框调试
原文链接:https://blog.csdn.net/qq_29503199/article/details/88351498 要在调试时读取输入,可以在 launch.json 中使用配置中的 ...