首页 > 编程语言 >无涯教程-ASP.NET Core - MVC设置

无涯教程-ASP.NET Core - MVC设置

时间:2023-10-11 13:32:14浏览次数:30  
标签:Core ASP 无涯 Microsoft MVC using NET public

在本章中,无涯教程将在FirstAppDemo应用程序设置为MVC框架,将在ASP.NET Core(更具体地说,ASP.NET Core MVC框架)构建一个Web应用程序,从技术上讲,只能使用中间件来构建整个应用程序,但是ASP.NET Core MVC提供了可轻松创建HTML页面和基于HTTP的API的功能。

要在空项目中设置MVC框架,请遵循以下步骤-

  • 安装 Microsoft.AspNet.Mvc 软件包,该软件包使可以访问框架提供的程序集和类。

  • 一旦安装了软件包,需要在运行时注册ASP.NET MVC所需的所有服务,将在 ConfigureServices 方法内进行此操作。

  • 最后,需要为ASP.NET MVC添加中间件以接收请求,本质上,这段中间件接受一个HTTP请求,并尝试将该请求定向将要编写的C#类。

步骤1 - 通过右键单击"Manage NuGet Package",进入NuGet软件包管理器,安装Microsoft.AspNet.Mvc程序包。

Microsoft.AspNet.MVC

步骤2 - 安装Microsoft.AspNet.Mvc程序包后,需要在运行时注册ASP.NET Core MVC所需的所有服务,将使用ConfigureServices方法执行此操作,还将添加一个简单的控制器,将看到该控制器的一些输出。

向该项目添加一个新文件夹,并将其命名为 Controllers 。在此文件夹中,可以如下所示在"Solution Explorer"中放置多个控制器。

Controllers

现在,右键单击Controllers文件夹,然后选择 Add→Class 菜单选项。

Add Class

步骤3 - 在这里要添加一个简单的 C#类,并将其命名为 HomeController ,然后单击上面的"Add"按钮屏幕截图。

Home Controller

这将是默认页面。

步骤4 - 定义一个公共方法,该方法返回一个字符串并调用该方法的Index,如以下程序所示。

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Threading.Tasks;  

namespace FirstAppdemo.Controllers { 
   public class HomeController { 
      public string Index() { 
         return "Hello, World! this message is from Home Controller..."; 
      } 
   } 
}

步骤5 - 当您转到网站的根目录时,您想查看控制器的响应,到目前为止,无涯教程将提供index.html文件。

Controller Response

进入网站的根目录并删除index.html,希望控制器响应而不是 index.html 文件。

步骤6 - 现在转到Startup类中的Configure方法,并添加 UseMvcWithDefaultRoute 中间件。

UseMvc Default Route

步骤7 - 现在在网站的根目录处刷新应用程序。

Refresh the Application

您将遇到500错误。该错误表明该框架无法找到所需的ASP.NET Core MVC服务。

ASP.NET Core Framework本身由职责非常集中的不同小组件组成。

如,有一个组件必须定位并化控制器,该组件必须位于服务集合中,ASP.NET Core MVC才能正常运行。

步骤8 - 除了添加NuGet软件包和中间件,还需要在ConfigureServices中添加AddMvc服务,这是Startup类的完整实现。

using Microsoft.AspNet.Builder; 
using Microsoft.AspNet.Hosting; 
using Microsoft.AspNet.Http; 

using Microsoft.Extensions.DependencyInjection; 
using Microsoft.Extensions.Configuration;  

namespace FirstAppDemo { 
   public class Startup { 
      public Startup() { 
         var builder = new ConfigurationBuilder() .AddJsonFile("AppSettings.json"); 
         Configuration = builder.Build(); 
      }  
      public IConfiguration Configuration { get; set; }
      
      //This method gets called by the runtime. 
      //Use this method to add services to the container. 
      //For more information on how to configure your application, 
      //visit http://go.microsoft.com/fwlink/?LinkID=398940 
      public void ConfigureServices(IServiceCollection services) { 
         services.AddMvc(); 
      }
      
      //This method gets called by the runtime.  
      //Use this method to configure the HTTP request pipeline. 
      public void Configure(IApplicationBuilder app) { 
         app.UseIISPlatformHandler();  
         
         app.UseDeveloperExceptionPage(); 
         app.UseRuntimeInfoPage();  
         
         app.UseFileServer(); 
         app.UseMvcWithDefaultRoute();  
         
         app.Run(async (context) => { 
            var msg = Configuration["message"]; 
            await context.Response.WriteAsync(msg); 
         });
      } 
      
      //Entry point for the application. 
      public static void Main(string[] args) => WebApplication.Run<Startup>(args); 
   }  
}            

步骤9 - 保存 Startup.cs 文件,然后转到浏览器并刷新它,您现在将收到无涯教程的 home控制器的回复。

Startup.Cs HomeController

参考链接

https://www.learnfk.com/asp.net_core/asp.net-core-setup-mvc.html

标签:Core,ASP,无涯,Microsoft,MVC,using,NET,public
From: https://blog.51cto.com/u_14033984/7809877

相关文章

  • 无涯教程-ASP.NET Core - 中间件
    在本章中,无涯教程将了解如何设置中间件(Middleware),ASP.NETCore中间件控制应用程序如何响应HTTP请求。现在假设想将有关每个请求的信息记录到应用程序中。在这种情况下,可能会安装到应用程序中的第一个中间件是日志记录(Logger)组件。该记录器(Logger)可以看到有关传入请求的......
  • tp5 php 阿里OS RequestCoreException: cURL error: SSL certificate problem: certif
    出现这种情况,肯定是域名SSL证书过期。现在出现问题:提交表单出现这种情况,网址不是https的,之前一直也没有问题,一开始想不通网址都不是HTTPS为什么还会有SSL证书的问题,检查了下发现上传中图片是上传到阿里OSS的(https://img.oss.xxx.com),里边就用到了HTTPS域名,原来是这样里,一查发现过......
  • Asp.net core中HttpResponse常用属性及Status code
    在ASP.NETCore中,HttpResponse表示HTTP响应,其中包括一些常用的属性和方法,用于设置HTTP响应的各种属性。HTTP响应通常由一个HTTP状态码,HTTP头(headers),和HTTP主体(body)组成。以下是一些常用的HttpResponse属性和一些常见的HTTP状态码及其含义:HttpResponse常用属性:StatusCode:用......
  • 《这是新的EF CORE》
    博客园是一个面向开发者的知识分享社区。自创建以来,博客园一直致力并专注于为开发者打造一个纯净的技术交流社区,推动并帮助开发者通过互联网分享知识,从而让更多开发者从中受益。博客园的使命是...博客园是一个面向开发者的知识分享社区。自创建以来,博客园一直致力并专注于为开......
  • 无涯教程-Derby - Alert语句
    ALTERTABLE语句允许您更改现有表,使用此您可以执行以下操作-添加列,添加约束删除列,删除约束更改表的行级别锁定让无涯教程假设已经创建了一个名为Employees的表,如下所示:ij>CREATETABLEEmployees(IdINTNOTNULLGENERATEDALWAYSASIDENTITY,NameVARCHAR(255......
  • 报错Intel MKL FATAL ERROR: Cannot load libmkl_core.so.的一种解决方法
    问题今天上80服务器跑mdistiller的代码时,意外发现torch、numpy都不能用了T_T以torch为例,出现如下报错情况以numpy为例,出现如下报错情况我们先看看报错信息,这个报错来自InterMKL。InterMKL全称是TheIntelMathKernelLibrary,它是一个主要是用于科学计算的共享库,提供了很......
  • 无涯教程-Derby - Having语句
    HAVING子句使您可以指定条件,以过滤出哪些组输出出现在输出中。WHERE子句将条件放置在所选列上,而HAVING子句将条件放置在GROUPBY子句创建的组上。Having-语法以下是HAVING子句的语法-ij>SELECTcolumn1,column2...fromtable_nameGROUPBYcolumnhavingcondition;......
  • 无涯教程-Derby - Order By语句
    ORDERBY子句用于按其使用关键字的顺序排列输出集的内容,ASC代表升序,DESC代表降序,如果您不提及其中任何一个,则默认情况下内容将按升序排列。OrderBy-语法以下是ORDERBY子句的语法-SELECT*FROMtable_nameORDERBYcolumn_nameASC|DESC.OrderBy-命令行示例假设无涯......
  • 无涯教程-Derby - Group By语句
    GROUPBY子句与SELECT语句一起使用,如果数据相同,则用于形成子集,通常,此子句后跟ORDERBY子句,并放在WHERE子句之后。GROUPBY-语法以下是GROUPBY子句的语法-ij>SELECTcolumn1,column2,...table_nameGROUPBYcolumn1,column2,...;GROUPBY-命令行示例假设无涯......
  • .net core linux下使用SkiaSharp实现图形验证码
    linux下使用c#自带的获取验证码需要安装图形处理插件比较麻烦 安装nugit依赖SkiaSharp.NativeAssets.Linux.NoDependencies  添加helper类SkiaSharpValidateCodeHelper.csusingSkiaSharp;usingSystem.Text;namespaceVerifyCode.Helpers{publicclassSkia......