宝哥软件园

ASP.NET核心项目配置教程(6)

编辑:宝哥软件园 来源:互联网 时间:2021-09-04

在本章中,我们将讨论ASP.NET核心项目的配置。在解决方案资源管理器中,您将看到Startup.cs文件。如果你有ASP.NET早期版本的工作经验,你可能想看一个global.asax文件,你可以在里面写代码。它是一个用于编写程序启动时立即执行的代码的文件。

您可能还希望看到一个web.config文件,其中包含应用程序执行所需的所有配置参数。在ASP.NET核心中,所有这些文件都不见了,相反,Startup.cs文件是一个启动类文件,您可以在其中配置您的应用程序,甚至配置您的配置资源。下面是Startup.cs文件中的默认实现代码:

使用系统;使用系统。集合。通用;使用系统。Linq使用系统。线程化。任务;使用微软。AspNetCore . Builder使用微软。托管;使用微软。AspNetCore . Http使用微软。扩展。依赖注射;使用微软。扩展。日志记录;命名空间FirstAppDemo {公共类Startup { //运行时调用此方法。//使用此方法向容器中添加服务。//有关如何配置应用程序的更多信息,请访问http://go.microsoft.com/fwlink/? LinkID=398940 public void ConfigureServices(IServiceCollection services){ }//此方法由运行时调用。使用此方法配置HTTP请求管道。public void Configure(IApplicationBuilder应用程序,IHostingEnvironment env,ILoggerFactory logger factory){ logger factory。AddConsole();if (env。IsDevelopment()) { app。usedeveloper exception page();} app。run(async(context)={ wait context。回应。写异步('你好,世界!');});}}}在启动类中,我们大部分的工作都会设计两种方法。配置方法是构建HTTP处理管道的地方。

这定义了应用程序如何响应请求。目前应用只能说“你好世界!”如果我们希望这个应用程序有不同的行为,我们需要通过向这个Configure方法添加额外的代码来改变周围的管道。例如,如果我们想提供一个index.html文件的静态文件,我们需要向Configure方法添加一些代码。您还可以有一个错误页面或Asp.Net控制器的异常请求的路由;这两个场景需要在这个配置方法中做一些工作。在启动类中,您还将看到ConfigureServices()方法。这有助于您配置应用程序的组件。现在,我们有了一个硬编码字符串“你好世界!”回应每一个请求。我们不希望每个请求都是硬编码的字符串。我们希望从一些组件中加载响应字符串。

其他组件可能会从数据库、web服务或JSON文件中加载文本,而不管文本加载到哪里。我们将设置一个场景,这样我们就不会有这个硬编码的字符串。在解决方案资源管理器中,右键单击项目节点,然后选择“添加新项”。

在左窗格中,选择已安装代码,然后在中间窗格中,选择JSON文件。给这个文件命名为AppSetting.json,然后点击添加按钮,如上图所示。

让我们将以下代码添加到AppSettings中。

{ '留言' : '你好,世界!此消息来自配置文件.}现在我们需要从Startup.cs文件访问此消息。下面是Startup.cs文件从JSON文件读取上述消息的实现代码。

使用微软. AspNet。建设者使用微软。托管;使用微软. AspNet。超文本传送协议(Hyper Text Transport Protocol的缩写)使用微软。扩展。依赖注射;使用微软。扩展。配置;命名空间FirstAppDemo {公共类启动{公共启动(){ var builder=新配置生成器().AddJsonFile(' appsettings。JSON’);配置=构建器build();}公共图标配置{获取设置;} //运行时调用此方法。//使用此方法向容器中添加服务。//有关如何配置应用程序的更多信息,请访问http://go.microsoft.com/fwlink/?LinkID=398940公共void ConfigureServices(IServiceCollection services){ }//此方法由运行时调用。//使用此方法配置超文本传送协议请求管道公共空间配置(IApplicationBuilder)应用程序){ app .useiis platformhandler();应用程序.运行(异步(上下文)={ var msg=Configuration[' message '];等待上下文回应。write async(msg);});} //应用程序的入口点。公共静态void Main(字符串[]个参数)=7gt网络应用程序.RunStartup(args);} }让我们现在运行应用程序。一旦您运行该应用程序,它会产生下面的输出。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

更多资讯
游戏推荐
更多+