加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 云计算 > 正文

在asp.netcore的中间件中返回具体的页面的实现方法

发布时间:2020-11-20 13:36:49 所属栏目:云计算 来源:网络整理
导读:这篇文章首要先容了在 asp.net core 的中间件中返回详细的页面的实现要领,本文给各人先容的很是具体,对各人的进修或事变具有必然的参考小心代价,必要的伴侣可

public SwaggerUIMiddleware(
  RequestDelegate next,
  IHostingEnvironment hostingEnv,
  ILoggerFactory loggerFactory,
  SwaggerUIOptions options)
 {
  _options = options ?? new SwaggerUIOptions();

_staticFileMiddleware = CreateStaticFileMiddleware(next, hostingEnv, loggerFactory, options);
 }

private StaticFileMiddleware CreateStaticFileMiddleware(
  RequestDelegate next,
  IHostingEnvironment hostingEnv,
  ILoggerFactory loggerFactory,
  SwaggerUIOptions options)
 {
  var staticFileOptions = new StaticFileOptions
  {
   RequestPath = string.IsNullOrEmpty(options.RoutePrefix) ? string.Empty : $"/{options.RoutePrefix}",
   FileProvider = new EmbeddedFileProvider(typeof(SwaggerUIMiddleware).GetTypeInfo().Assembly, EmbeddedFileNamespace),
  };

return new StaticFileMiddleware(next, hostingEnv, Options.Create(staticFileOptions), loggerFactory);
 }
}

当完成了页面的泛起后,由于一样平常我们会建设一个单独的类库来实现这些成果,在页面中,也许会包括前后端的数据交互,因为我们在宿主的 API 项目中已经完成了对付路由法则的设定,以是这里只必要在类库中通过 nuget 引用 Microsoft.AspNetCore.Mvc.Core ,然后与 Web API 一样的界说 controller,确保这此中间件在宿主措施的挪用位于路由匹配法则之后即可

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
 if (env.IsDevelopment())
 {
  app.UseDeveloperExceptionPage();
 }

app.UseHttpsRedirection();

app.UseRouting();

app.UseAuthorization();

// Endpoint 路由法则设定
 app.UseEndpoints(endpoints =>
 {
  endpoints.MapControllers();
 });

// 自界说中间件
 app.UseMiddleware<SampleUIMiddleware>();
}

参考:https://www.jb51.net/article/116369.htm

总结

到此这篇关于在 asp.net core 的中间件中返回详细的页面的实现要领的文章就先容到这了,更多相干asp.net core 中间件返回详细的页面内容请搜刮剧本之家早年的文章或继承赏识下面的相干文章但愿各人往后多多支持剧本之家!

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读