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

温州网站建设定制教育网站制作哪专业

温州网站建设定制,教育网站制作哪专业,关键词查找工具,平面广告设计需要学什么在上一节#xff08;ASP.NET Core 运行原理剖析1:初始化WebApp模版并运行#xff09;中提到ASP.NET Core WebApp 必须含有Startup类,在本节中将重点讲解Startup类以及Middleware(中间件)在Startup类中的使用。 Startup Class Startup Class中含有两个重要方法#xff1a;Con… 在上一节ASP.NET Core 运行原理剖析1:初始化WebApp模版并运行中提到ASP.NET Core WebApp 必须含有Startup类,在本节中将重点讲解Startup类以及Middleware(中间件)在Startup类中的使用。 Startup Class Startup Class中含有两个重要方法Configure方法用于每次http请求的处理比如后面要讲的中间件(Middleware)就是在configure方法中配置。而ConfigureServices方法在Configure方法前调用它是一个可选的方法可在configureServices依赖注入接口或一些全局的框架比如EntityFramework、MVC等。Startup 类的 执行顺序构造 - configureServices-configure。 1、Startup Constructor构造函数 主要实现一些配置的工作方法参数如下 IHostingEnvironment: 用于访问应用程序的特殊属性比如applicationName,applicationVersion。通过IHostingEnvironment对象下的属性可以在构造中实现配置工作。比如获取当前根路径找到配置json文件地址然后ConfigurationBuilder初始化配置文件最后可以通过GetSection()方法获取配置文件。代码清单如下 var builder new ConfigurationBuilder().SetBasePath(env.ContentRootPath).AddJsonFile(appsettings.json);                     var configuration builder.Build();                     var connStr configuration.GetSection(Data:DefaultConnection:ConnectionString).Value; 根目录下的配置文件如下 {Data: {DefaultConnection: {ConnectionString: Server(localdb)\\MSSQLLocalDB;Database_CHANGE_ME;Trusted_ConnectionTrue;}}} ILoggerFactory: 提供创建日志的接口可以选用已经实现接口的类或自行实现此接口,下面代码使用最简单的控制台作为日志输出。 public Startup(IHostingEnvironment env, ILoggerFactory logger) {         var log logger.CreateLogger(default);logger.AddConsole();log.LogInformation(start configure);} 2、ConfigureServices 主要实现了依赖注入(DI)的配置方法参数如下 IServiceCollection整个ASP.NET Core 默认带有依赖注入(DI)IServiceCollection是依赖注入的容器首先创建一个类(Foo)和接口(IFoo),代码清单如下 using System;using System.Collections.Generic;using System.Linq;using System.Threading.Tasks;namespace WebApplication1{   public interface IFoo{        string GetFoo();} } using System;using System.Collections.Generic;using System.Linq;using System.Threading.Tasks;namespace WebApplication1{    public class Foo : IFoo{        public string GetFoo()        {            return foo;}} } 在ConfigureServices 中将接口和实现注入至容器 public void ConfigureServices(IServiceCollection services)       {services.AddTransientIFoo, Foo();} 如果想在每次Http请求后都使用IFoo的GetFoo()方法来处理上面讲到可以在Configure方法中注册函数在注册过程中由于使用了依赖注入(DI)因此可以直接通过RequestServices.GetRequiredServiceIFoo()泛型方法将IFoo对象在容器中取出。 app.Run((context) {               var str context.RequestServices.GetRequiredServiceIFoo().GetFoo();               return context.Response.WriteAsync(str);}); 除了自己的接口外,还支持通过扩展方法添加更多的注入方法比如EntityFramework、mvc框架都实现自己的添加方法。 public void ConfigureServices(IServiceCollection services){    // Add framework services.services.AddDbContextApplicationDbContext(options options.UseSqlServer(Configuration.GetConnectionString(DefaultConnection)));services.AddIdentityApplicationUser, IdentityRole().AddEntityFrameworkStoresApplicationDbContext().AddDefaultTokenProviders();services.AddMvc();    // Add application services.services.AddTransientIFoo, Foo();} 3、Configure方法 主要是http处理管道配置和一些系统配置参数如下 IApplicationBuilder: 用于构建应用请求管道。通过IApplicationBuilder下的run方法传入管道处理方法。这是最常用方法对于一个真实环境的应用基本上都需要比如权限验证、跨域、异常处理等。下面代码调用IApplicationBuilder.Run方法注册处理函数。拦截每个http请求输出Hello World。 public void Configure(IApplicationBuilder app){app.Run((context) context.Response.WriteAsync(Hello World!)); } IHostingEnvironment: 同构造参数ILoggerFactory: 同构造参数 Middleware 中间件是一个处理http请求和响应的组件多个中间件构成了处理管道(Handler pipeline)每个中间件可以决定是否传递至管道中的下一中间件。一旦注册中间件后每次请求和响应均会被调用。 1、中间件注册 中间件的注册在startup中的Configure方法完成在configure方法中使用IApplicationBuilder对象的Run、Map、Use方法传入匿名委托(delegate)。上文示例注册IFoo.GetFoo()方法就是一个典型的中间件。 Run Use: 添加一个中间件至请求管道。它们在功能很类似但是也存在一些区别先来看下两个方法的定义。 public static IApplicationBuilder Use(this IApplicationBuilder app, FuncHttpContext, FuncTask, Task middleware); public static void Run(this IApplicationBuilder app, RequestDelegate handler); Run是通过扩展方法语法来定义传入入参是RequestDelegate的委托,执行完一个第一个run后是不会激活管道中的第二个run方法这样代码执行结果只会输出一个“hello world!” app.Run((context) context.Response.WriteAsync(Hello World!));app.Run((context) context.Response.WriteAsync(Hello World 1!)); 而use方法的入参则是Func的委托包含两个入参和一个返回值,这样在第一个函数执行完成后可以选择是否继续执行后续管道中的中间件还是中断。 app.Use((context, next) {context.Response.WriteAsync(ok);                             return next();}); app.Use((context, next) {                             return context.Response.WriteAsync(ok);}); Map: 含有两个参数pathMatche和configuration通过请求的url地址匹配相应的configuration。例如可以将url路径是/admin的处理函数指定为如下代码 app.Map(/admin, builder {builder.Use((context, next) context.Response.WriteAsync(admin));}); 2、常用中间件 Middleware功能描述Authentication提供权限支持CORS跨域的配置Routing配置http请求路由Session管理用户会话Static Files提供对静态文件的浏览 这里有一些官方的示例,链接 以上内容有任何错误或不准确的地方请大家指正不喜勿喷 作者帅虫哥 出处 http://www.cnblogs.com/vipyoumay/p/5640645.html 本文版权归作者和博客园共有欢迎转载但未经作者同意必须保留此段声明且在文章页面明显位置给出原文连接否则保留追究法律责任的权利。如果觉得还有帮助的话可以点一下右下角的【推荐】希望能够持续的为大家带来好的技术文章想跟我一起进步么那就【关注】我吧。 参考链接 [1] https://docs.asp.net/en/latest/fundamentals/middleware.html [2] http://www.talkingdotnet.com/app-use-vs-app-run-asp-net-core-middleware/ 相关文章 ASP.NET Core 1.0 入门——了解一个空项目ASP.NET Core 1.0 部署 HTTPS .NET Framework 4.5.1.NET Core 1.0、ASP.NET Core 1.0和EF Core 1.0简介云服务器下ASP.NET Core 1.0环境搭建包含mono与coreclr使用VS Code开发ASP.NET Core 应用程序dotnet run是如何启动asp.net core站点的ASP.NET Core提供模块化Middleware组件“dotnet restore和dotnet run都做了些什么探秘 dotnet run 如何运行 .NET Core 应用程序.NET Portability Analyzer 已开源ASP.NET Core的配置1读取配置信息ASP.NET Core的配置2配置模型详解.NET Core 1.0 RC2 历险之旅使用VS Code开发 调试.NET Core 应用程序让我们Core在一起ASP.NET Core .NET Core.NET Core VS Code 环境配置官方博客明确了 .NET Core RC2/RTM 时间表.NET Core全新的配置管理[共9篇]利用记事本创建一个ASP.NET Core RC2 MVC应用微软.NET 正式劈腿成功横跨所有平台.NET Core 1.0 CentOS7 尝试解读发布.NET Core RC2 and .NET Core SDK Preview 1[.NET Core].NET Core R2安装及示例教程ASP.NET Core 开发-中间件(Middleware)结合Jexus Kestrel 部署 asp.net core 生产环境通过Jexus 部署 dotnetcore版本MusicStore 示例程序ASP.NET Core 中文文档 第一章 入门用 Visual Studio Code 在 macOS 上创建首个 ASP.NET Core 应用程序用 Visual Studio 和 ASP.NET Core MVC 创建首个 Web API用 Visual Studio 发布一个 Azure 云 Web 应用程序ASP.NET Core MVC 与 Visual Studio 入门第二章指南4.2添加 ControllerDotNet Core 介绍asp.net core 中间件详解及项目实战教你实践ASP.NET Core Authorization免看文档教程asp.net core 使用 Redis 和 Protobuf 进行 Session 缓存asp.net core 中间件详解及项目实战第二章 指南4.3添加 Viewdotnet core开发体验之开始MVCdotnet core 开发体验之Routing聊聊ASP.NET Core默认提供的这个跨平台的服务器——KestrelServer简析.NET Core 以及与 .NET Framework的关系.NET Core 使用Dapper 操作MySQL使用 CommandLineApplication 类创建专业的控制台程序简析 .NET Core 构成体系.NET Core也可以使用MongoDB了.NET Core ASP.NET Core 1.0在Redhat峰会上正式发布.NET Core面向未来的开源跨平台开发技术微软说它深爱着Linux现在它用行动证明了移植.NET Core计划整合各平台变得更简单了ASP.NET Core 介绍通过几个Hello World感受.NET Core全新的开发体验ASP.NET Core 运行原理剖析1:初始化WebApp模版并运行.NET Core系列 1、.NET Core 环境搭建和命令行CLI入门Asp.Net Core 发布和部署 MacOS Linux Nginx Asp.Net Core 发布和部署Linux Jexus 学习ASP.NET Core你必须了解无处不在的“依赖注入”.NET Core应用类型Portable apps Self-contained apps 原文地址http://www.cnblogs.com/vipyoumay/p/5640645.html .NET社区新闻深度好文微信中搜索dotNET跨平台或扫描二维码关注
http://wiki.neutronadmin.com/news/6410/

相关文章:

  • 网站兼容性数商云是干嘛的
  • 北仑静态网站建设结婚证app制作软件
  • 五合一建站网站备案地址不是我的地址怎么办
  • 关于制作网站收费标准网站APP推广
  • 丹东市网站建设网站建设与推广长春
  • 临沂供电公司网站成都房产网签查询
  • 有了网站源码怎么做网站怎么在阿里云建设网站
  • php实战做网站视频教程动漫设计与制作属于什么专业类别
  • 网站建设锚点链接手机版网站做一下多少钱
  • e通网网站建设做彩票的网站吗
  • 深圳专业网站制作平台网站建设管理情况自查报告
  • 网站pc端和手机端分离怎么做重庆在线课程
  • 网站过期怎么找回来我想借个企业邮箱
  • 做一个网站的市场价怎么创建网站教程
  • 做网站如何挣钱苏州建设职业培训中心
  • 北京正规网站建设经历深圳58同城招聘网
  • 网站开发需要配置哪些人员企业网站框架
  • 个人网站制作在线宁波网页制作设计营销
  • 网站开发与电子商务抖音关键词优化
  • 电子商务网站建设客户需求调查表权威发布新冠疫苗接种禁忌
  • 南京网站制作公司有哪些公司黄页查询
  • 做文字的网站网站建设公司有前途吗
  • wordpress 多站点教程米拓网站建设教程
  • 如何做公司自己的网站土巴兔网站开发技术
  • 网站设计项目建设内容网站建设制作包括哪些方面
  • 企业网站模板 html株洲网站开发公司
  • 专门做软陶的网站厦门一个平台做网站啥的
  • 深圳福田网站设计wordpress怎么设置伪静态页面
  • 网站开发在哪里接活网站后台内容编辑器
  • 国外皇色网站专业网站建设专家