在 .NET 5.0 运行 .NET 8.0 教程:使用 ASP.NET Core 创建 Web API

devtools/2024/12/22 8:12:33/

前言

因为我本机安装的是vs2019,所以我在使用vs创建项目的时候,只能选择.NET 5.0,而无法选择.NET 8.0
在这里插入图片描述
在网上有看到说用vs2019使用.net 8.0 ,但是感觉不可靠,要用还是安装vs2022吧。
我因为不想要安装vs2022。
但是微软教程上的代码又是基于.NET 8.0,对于从未接触过.NET CORE 的人来说,我运行不起来代码。
可以问ChatGPT,我就是在结合CHATGPT成功跑起来的。

关键核心部分

  1. 添加NuGet 包,记得选择符合自己框架版本的包版本。如.net 5.0 就需要选择5.x的包版本

  2. 在这里插入图片描述

  3. 教程中注册数据库上下文,.net 5.0 的Program.cs 是没有找到可以填写相关内容的地方。硬要填写估计是运行不起来的。

  4. 这部分注册就需要写在 startup.cs 代码文件中

  5. 在这里插入图片描述

整个startup.cs的代码

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using Microsoft.OpenApi.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;
using TodoApi20241005.Models;namespace TodoApi20241005
{public class Startup{public Startup(IConfiguration configuration){Configuration = configuration;}public IConfiguration Configuration { get; }// First Called// This method gets called by the runtime. Use this method to add services to the container.public void ConfigureServices(IServiceCollection services){services.AddControllers();//这里添加数据库的连接//在 ASP.NET Core 中,服务(如数据库上下文)必须向依赖关系注入 (DI) 容器进行注册。 该容器向控制器提供服务。//注册数据库上下文services.AddDbContext<TodoContext>(opt =>opt.UseInMemoryDatabase("TodoList"));services.AddSwaggerGen();services.AddSwaggerGen(c =>{c.SwaggerDoc("v1", new OpenApiInfo { Title = "TodoApi20241005", Version = "v1" });});}// Second Called// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.public void Configure(IApplicationBuilder app, IWebHostEnvironment env){if (env.IsDevelopment()){app.UseDeveloperExceptionPage();app.UseSwagger();app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "TodoApi20241005 v1"));}app.UseRouting();app.UseAuthorization();app.UseEndpoints(endpoints =>{endpoints.MapControllers();});}}
}
  1. 然后就大功告成了,整个教程就这部分无法与.NET 5.0 兼容。因为是在不同的类文件里了。

http://www.ppmy.cn/devtools/144316.html

相关文章

Github 2024-12-17Python开源项目日报 Top10

根据Github Trendings的统计,今日(2024-12-17统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目10TypeScript项目1C++项目1Vue项目1稳定扩散Web UI 创建周期:512 天开发语言:Python协议类型:GNU Affero General Public License…

Linux 使用的小细节

Linux 使用的小细节 1. && 和 & && 表示前一条命令执行成功时&#xff0c;才执行后一条命令。 ls -l && cd ..& 表示任务后台执行&#xff0c;与 nohup 命令功能相似。 java -jar test.jar > log.txt & # 运行 jar 包&#xff0c…

如何解决微信小程序使用webview无法打开

问题&#xff1a; 微信小程序使用 webview 但是页面无法打卡 解决&#xff1a; 1、登录微信小程序后台&#xff0c;管理–>开发管理–>鼠标下滑到 -->业务域名 2、根据指示配置一下就可以了 记住&#xff01; 这里下载文件&#xff0c;要上传到您所要展示文件的域名…

QT网络(二):TCP通信

传输层概念 传输控制协议&#xff08;transmission control protocol&#xff0c;TCP&#xff09;是一种被大多数 Internet 网络协议用于数据传输的底层网络协议&#xff0c;它是可靠的、面向流和连接的传输协议&#xff0c;特别适合用于连续数据传输。 应用层在网络模型中的…

Android Studio创建新项目并引入第三方so外部aar库驱动NFC读写器读写IC卡

本示例使用设备&#xff1a;https://item.taobao.com/item.htm?spma21dvs.23580594.0.0.52de2c1bbW3AUC&ftt&id615391857885 一、打开Android Studio,点击 File> New>New project 菜单&#xff0c;选择 要创建的项目模版&#xff0c;点击 Next 二、输入项目名称…

[网络]tcp通信协议接口函数及一些简易项目

tcp是最常用的传输层协议,面向字节流,相较于其他协议,如udp;tcp更为复杂,tcp额外提供了可靠的、有序的和错误检测功能的数据传输服务.简单点来说,tcp更复杂,数据也更可靠 本文只是介绍tcp通信的一些接口,并不具体介绍tcp协议的内容以及各种策略 服务器端 1.socket int socket(…

利器 | AppCrawler 自动遍历测试工具实践(一)

本文为霍格沃兹测试学院学院学员课程学习笔记&#xff0c;系统学习交流文末加群。 AppCrawler 是由霍格沃兹测试学院校长思寒开源的一个项目,通过名字我们大概也能猜出个方向&#xff0c;Crawler 是爬虫的意思&#xff0c;App 的爬虫&#xff0c;遍历 App &#xff1a; 官方 G…

游戏网站大全

http://piano.ssjjss.com/ 钢琴模拟器 https://gangqin.bmcx.com/?tdsourcetags_pcqq_aiomsg#/ 在线钢琴 https://www.gushiwen.cn/ 古诗文; https://www.bilibili.com/video/BV1UEWpeaEQK/ https://bouncyballs.org/ 掉落的球球 https://fakeupdate.net/ 假装升级界面 ht…