在 Asp.Net Core 中安装 MVC
在 ASP.NET Core 中安装 MVC 两个步骤学会在 ASP.NET Core 配置 MVC步骤 1:在 Startup.cs 文件中的 Startup 类的**ConfigureServices()**方法中,见下方代码。 这行代码将所需的 MVC 服务添加到 asp.net core 中的依赖注入容器中。 services.AddMvc(); 步骤 2:在 Configure()方法中,将**UseMvcWithDefaultRoute()**中间件添加到我们的应用程序的请求处理管道中。 修改代码,如下所示。 public void Configure(IApplicationBuilder app,IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseStaticFiles(); app.UseMvcWithDefaultRoute(); app.Run(async (context) => { await context.Response.WriteAsync("Hello World!"); }); } 注意,我们在**UseMvcWithDefaultRoute()中间件之前放置了UseStaticFiles()中间件。 此顺序很重要,因为如果请求是针对静态文件(如图像,CSS 或 JavaScript 文件),则UseStaticFiles()**中间件将处理请求并使管道的其余部分短路。 因此,如果请求是针对静态文件,则不会执行**UseMvcWithDefaultRoute () **中间件,从而避免不必要的处理。 另一方面,如果请求是 MVC 请求,**UseStaticFiles ()**中间件将把该请求传递给 UseMvcWithDefaultRoute() 中间件,中间件将处理请求并生成响应。 请注意,除了UseMvcWithDefaultRoute () 中间件之外,我们还有**UseMvc ()**中间件。现在,让我们使用 UseMvcWithDefaultRoute() 中间件。
此时,如果我们运行应用程序并导航到 URL -http://localhost:49119,我们会看到“Hello World!” 消息显示在浏览器中。
现在让我们看看,如果我们删除 Run()中间件会发生什么。 此时,Configure()方法中的代码必须如下所示。 public void Configure(IApplicationBuilder app,IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseStaticFiles(); app.UseMvcWithDefaultRoute(); } 有了上面的代码,如果我们再次向 URL 发出请求 - http://localhost:49119,我们现在看到 404 错误。 这是因为 UseMvcWithDefaultRoute()中间件没有找到带有 Index()动作的 HomeController,并且管道中没有其他中间件,所以我们看到 404 错误。 添加 HomeController在项目根文件夹中添加 Controllers 文件夹。 在“控制器”中添加一个新的控制器。 复制并粘贴以下代码。 public class HomeController { public string Index() { return "Hello from MVC"; } } 生成解决方案并向应用程序 URL 发出请求 - 欢迎添加个人微信号:Like若所思。 欢迎关注我的公众号,不仅为你推荐最新的博文,还有更多惊喜和资源在等着你!一起学习共同进步! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-core – 包恢复失败.回滚包更改
- asp.net-mvc – 将存储库注入ASP.NET控制器的最佳
- asp.net-mvc – ASP.NET MVC验证消息未被本地化
- asp.net-mvc – 在Elastic Beanstalk Web.config
- asp.net – 在mvc网站中设置基本标记中的url路径
- 为什么Request.IsAjaxRequest()在ASP.NET MVC 3中
- asp.net – 以编程方式将HTML转换为Markdown语法
- 有没有办法从ASP.NET访问IIS内核缓存?
- asp.net-mvc – 如何在ASP MVC中编码完整的URL字
- asp.net-mvc – LINQ to Entities无法识别方法异