怎么做公司网站需要什么科目应用公园是收费还是免费的
news/
2025/9/22 19:19:10/
文章来源:
怎么做公司网站需要什么科目,应用公园是收费还是免费的,电子商务主要是干什么的,高端网站建设公司有哪些项目最小 API 并不是在 .NET 7 中才加入的#xff0c;记得应该是在 .NET 6 中就已经提供#xff0c;只是对我来说#xff0c;到现在才开始使用。创建一个最小 API在 VS 2022 中创建 WebAPI 项目#xff0c;不勾选使用控制器#xff0c;创建出来的就是最小 API #xff1a;不勾…最小 API 并不是在 .NET 7 中才加入的记得应该是在 .NET 6 中就已经提供只是对我来说到现在才开始使用。创建一个最小 API在 VS 2022 中创建 WebAPI 项目不勾选使用控制器创建出来的就是最小 API 不勾选使用控制器就会创建最小 API 模板启用 OpenAPI 默认会添加 Swagger顶级语句顶级语句是 C# 9.0 中添加的新特性如果勾选不使用Program 类中还会出现 main 函数。创建出来的工程只有两个文件重大的改变就是没有之前的 Startup 类了只有一个 Program 和一个配置文件 appsetting.jsonProgram 类的全部代码如下var builder WebApplication.CreateBuilder(args);
//在下面添加服务器到容器相当于之前 Startup 类中的 ConfigureServices 方法var app builder.Build();
//在下面编写管道相关代码相当于之前 Startup 类中的 Configure 方法//在下面编写接口相当于之前 Controller 中的方法
var summaries new[]
{Freezing, Bracing, Chilly, Cool, Mild, Warm, Balmy, Hot, Sweltering, Scorching
};app.MapGet(/weatherforecast, ()
{var forecast Enumerable.Range(1, 5).Select(index new WeatherForecast(DateOnly.FromDateTime(DateTime.Now.AddDays(index)),Random.Shared.Next(-20, 55),summaries[Random.Shared.Next(summaries.Length)])).ToArray();return forecast;});//运行 API
app.Run();internal record WeatherForecast(DateOnly Date, int TemperatureC, string? Summary)
{public int TemperatureF 32 (int)(TemperatureC / 0.5556);
}app.MapGet 方法接受两个参数第一个参数是一个字符串为接口的访问路径第二个参数是一个委托用来编写接口的业务逻辑。从 MapGet 这个方法名可以看出这是一个 Get 请求的接口方法如果要使用 Post 可以使用 MapPost 。添加一个接口方法非常简单如下图使用 Serilog 日志框架1、安装 NuGet 包Serilog.AspNetCore安装这一个就会包含 Serilog 、Serilog.Sink.File 等。2、在 Program 类的 builder 创建之后添加对 Serilog 的使用using Serilog;var builder WebApplication.CreateBuilder(args);
//在下面添加服务器到容器相当于之前 Startup 类中的 ConfigureServices 方法
//添加对 serilog 的使用
builder.Host.UseSerilog((hostContext, services, configuration) {configuration.WriteTo.File(serilog-file.txt).WriteTo.Console();
});
var app builder.Build();
// 下面代码省略3、运行程序会看到项目更目录下会生成一个 serilog-file.txt 文本文件里面记录了所有日志4、在上面添加的 helloworld 方法中使用日志app.MapGet(/helloworld, ()
{Log.Information(helloworld.start);return hello ,oec2003;});Information 是日志级别还有 Error、Warning、Fatal、Debug接口方法调用后日志会写入文本文件。依赖注入依赖注入一个常见的做法是使用构造函数进行注入传统的 WebAPI 中可以在 Controller 的构造函数中进行但最小 API 没有 Controller ,下面看看在最小 API 中是怎么注入的。1、在 Program 类的最下面添加 IUser 接口和 User 类internal interface IUser
{string GetName();
}
internal class User : IUser
{public string GetName(){return oec2003;}
}2、在 Program 类的 builder 创建之后添加依赖注入的配置builder.Services.AddTransientIUser, User();3、注入的地方由原来的构造函数变成了方法参数app.MapGet(/helloworld, (IUser user)
{return $hello , {user.GetName()};});配置最小 API 的项目中的两个文件其中一个就是 appsetting.json 配置文件下面以 Serilog 日志框架的配置为例来演示怎样读取配置文件。1、在上面的 Serilog 例子中配置是在代码中写死的现在将配置移到 appsetting.json 配置文件中。Serilog: {MinimumLevel: Information,Override: {Microsoft.AspNetCore: Warning},WriteTo: [{Name: Console},{Name: File,Args: {path: Serilogs\\serilog.log}}]
}2、修改 builder 部分的代码builder.Host.UseSerilog((hostingContext, loggerConfiguration) loggerConfiguration.ReadFrom.Configuration(hostingContext.Configuration));3、运行程序后在程序根目录下会创建 Serilogs 目录该目录中会创建 serilog.log 文件。总结1、对于一些简单的接口场景使用最小 API 比较方便都在一个文件中处理2、除了依赖注入式通过方法参数其他很多地方跟之前用法类似就是将 Startup 中 ConfigureServices 方法和 Configure 方法搬到了 Program 类的固定位置。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/910103.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!