当前位置: 首页 > news >正文

单页网站建站谷歌浏览器下载安装

单页网站建站,谷歌浏览器下载安装,英文网站建设szjijie,建设网站的需求分析Minimal APIs 是.Net 6 中新增的模板#xff0c;借助 C# 10 的一些特性以最少的代码运行一个 Web 服务。本文脱离 VS 通过 VS Code#xff0c;完成一个简单的 Minimal Api 项目的开发。创建项目新建一个文件夹#xff0c;用来管理我们的项目文件#xff0c;文件夹内启动命令… Minimal APIs 是.Net 6 中新增的模板借助 C# 10 的一些特性以最少的代码运行一个 Web 服务。本文脱离 VS 通过 VS Code完成一个简单的 Minimal Api 项目的开发。创建项目新建一个文件夹用来管理我们的项目文件文件夹内启动命令行通过dotnet new web创建项目。Minimal ├── obj ├── Properties ├── appsettings.Development.json ├── appsettings.json ├── Minimal.csproj └── Program.cs运行项目项目目录下执行dotnet run运行项目。PS C:\Users\User01\Desktop\Minimal dotnet run 正在生成... info: Microsoft.Hosting.Lifetime[14]Now listening on: https://localhost:7221 info: Microsoft.Hosting.Lifetime[14]Now listening on: http://localhost:5252 info: Microsoft.Hosting.Lifetime[0]Application started. Press CtrlC to shut down. info: Microsoft.Hosting.Lifetime[0]Hosting environment: Development info: Microsoft.Hosting.Lifetime[0]Content root path: C:\Users\User01\Desktop\Minimal\运行效果如下:Codingbuilder 实例提供了 Services 属性可以完成原本 Startup 类 ConfigureServices 方法中注册服务的工作,Configure 方法的一些 Use 操作则通过 app 来完成。builder.Services.AddMemoryCache();app.UseStaticFiles(); if (app.Environment.IsDevelopment()) {app.UseSwagger();app.UseSwaggerUI(c c.SwaggerEndpoint(/swagger/v1/swagger.json, ${builder.Environment.ApplicationName} v1)); }Mapbuilder.Build()返回的 app 实例提供了 Map、Methods、MapXXX 方法实现 HttpMethod 路由的映射。这里只以 Get 请求为例。Map 和 MapMethods 方法提供不同的特性和参数可以代替 MapGet 方法。app.MapGet(/, () Hello World!);app.Map(/, [HttpGet] () Hello World!);HttpGet 特性限定请求为 Get 请求如果不指定则不限制请求方法Get、Post 等方式可以请求改路由地址app.MapMethods(/, new Liststring() { HttpMethod.Get.ToString() }, () Hello World!);Application代码内直接修改应用程序配置如修改监听端口app.Urls.Add(http://localhost:3000); //app.Run(); app.Run(http://localhost:4000);优先级 app.Run app.Urls.Add launchSettingsDependency InjectionMinimal APIs 中无法使用构造函数注入但可以通过参数方式注入并忽略 FromServices 特性。app.MapGet(/info, (IWebHostEnvironment env) new {Time DateTimeOffset.UtcNow,env.EnvironmentName });Context一些 Http 请求的上下文信息也可以通过参数直接指定方法体内直接使用代替 MVC 中的 Request 等。如HttpContextHttpRequestHttpResponseClaimsPrincipalCancellationTokenapp.MapGet(/context, (HttpContext httpContext) new {Data httpContext.Connection.Id });更多类型参考githubResponses通过静态类 Results 返回标准的相应类型实现和 ControllerBase 提供对应方法相同的效果。app.MapGet(/ok/{id}, (int id) {return Results.Ok($ok:{id}); });Link Generation通过扩展方法 WithXXX 等可以对路由进行一些配置如通过 WithName 指定名称再通过 LinkGenerator 生产对应 Uri避免硬编码app.MapGet(/context, (HttpContext httpContext) new {Data httpContext.Connection.Id }).WithName(hi);app.MapGet(hello, (LinkGenerator linker) $The link to the hello route is {linker.GetPathByName(hi, values: null)});除了 WithXXX 等一些列 RoutingEndpointConvention 扩展方法外还提供了 AuthorizationEndpointConvention 相关扩展方法 RequireAuthorization、AllowAnonymous 代替 MVC 模式中的相关特性特性也还可以用只是多了一个支持方式。本文只列出 Minimal APIs 的一些简单用法集成 Swagger 等用法内容参考https://minimal-apis.github.io/hello-minimal/接口的返回状态码和类型等可以通过扩展方法 Produces 说明如ProducesResponseMode(contentType:application/xml); 但是接口备注貌似还不支持我尝试了很多方式都不能正确显示。Code FormatMinimal APIs 上面示例存在的问题是 Program 文件中会有太多的编码所有路由的映射和响应都在一起虽然可以通过如下方式使用静态方法抽离响应方法但所有的 Route Map 还是列在一起不能像 Controller 一样分离。var handler new HelloHandler();app.MapGet(/, handler.Hello);class HelloHandler {public string Hello(){return Hello World;} }可以借助开源框架 MASA.Contrib提供的 MASA.Contrib.Service.MinimalAPIs 完成代码封装。详细用法参考 MASA.EShopProgram.csvar builder WebApplication.CreateBuilder(args); var app builder.Services.AddServices(builder); app.Run();HelloService.cspublic class HelloService : ServiceBase {public HelloService(IServiceCollection services): base(services) App.MapGet(/api/v1/helloworld, ()Hello World)); }我们正在行动新的框架、新的生态我们的目标是自由的、易用的、可塑性强的、功能丰富的、健壮的。所以我们借鉴Building blocks的设计理念正在做一个新的框架MASA Framework它有哪些特点呢原生支持Dapr且允许将Dapr替换成传统通信方式架构不限单体应用、SOA、微服务都支持支持.Net原生框架降低学习负担除特定领域必须引入的概念坚持不造新轮子丰富的生态支持除了框架以外还有组件库、权限中心、配置中心、故障排查中心、报警中心等一系列产品核心代码库的单元测试覆盖率90%开源、免费、社区驱动还有什么我们在等你一起来讨论经过几个月的生产项目实践已完成POC目前正在把之前的积累重构到新的开源项目中目前源码已开始同步到Github文档站点在规划中会慢慢完善起来MASA.BuildingBlocksMASA.ContribMASA.UtilsMASA.EShopBlazorComponentMASA.BlazorQQ群7424099微信群加技术运营微信MasaStackTechOps备注来意邀请进群                                                          ----- END ------作者简介马跃MASA技术团队成员。
http://www.pierceye.com/news/408501/

相关文章:

  • 西充县住房和城乡建设局网站深圳建设局网站打不开
  • 深圳常平网站建设制作公司网站开发qq群
  • 校园网站建设的感受论文专业微信网站建设公司首选
  • 国外免费logo设计网站免费网课平台
  • 高端网站设计定制公司页面跳转自动更新
  • 项目建设资金来源网站网站开发技术可以做什么工作
  • 可做易企秀的网站网页建站网站
  • 南京网站建设价格大型网站开发协调
  • 园林景观设计公司点评的网站和论坛大型网站搜索怎么做的
  • 河南省建设教育培训中心网站广告机器设备的价格表
  • 郑州做网站哪家最好中国能源建设集团有限公司是什么级别
  • 品牌设计公司排行榜前十名seo外包服务公司
  • 潍坊网站建设 58wordpress 酒店预订
  • 个人网站主机选择电商公司官网
  • 名城苏州网站龙岗网站建设价位
  • 免费手机网站制作学做网站游戏教程
  • 什么企业做网站广州市公司网站建设
  • 无锡万度网站建设推广电影链接赚佣金
  • 电子商务网站建设与管理实训网页设计与网站建设基础心得体会
  • 托管的服务器如何做网站花店网站模板 html
  • 南宁保洁网站建设在线 代理 输入网址
  • 微站是什么意思快站app下载
  • 网站让女友做网站模特做网站好一点的软件
  • 苏州h5网站建设wordpress 数据库配置
  • 环保网站模板下载农村电商平台怎么加入
  • 教育企业重庆网站建设建设公司网站征集信息的通知
  • 广州做网站找哪家好成都装饰设计公司排名
  • 做头发个人网站制作素材copyright wordpress
  • 高埗镇网站仿做企业网站建设市场分析
  • 网站怎么加icowordpress 程序员主题