首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ASP.NET Core3.0中的.AddMvc()?

在ASP.NET Core 3.0中,.AddMvc()是一个用于配置应用程序的方法。它是ASP.NET Core MVC框架的一部分,用于添加MVC服务和中间件到应用程序的请求处理管道中。

具体来说,.AddMvc()方法会注册并配置以下功能:

  1. 路由:它会添加一个路由中间件,用于解析传入请求的URL,并将其路由到相应的控制器和动作方法。
  2. 模型绑定:它会添加模型绑定中间件,用于将请求数据绑定到控制器的参数或模型对象上。
  3. 校验:它会添加校验中间件,用于验证模型对象上的数据注解和自定义规则。
  4. 视图引擎:它会注册并配置Razor视图引擎,用于处理和呈现视图。
  5. JSON序列化:它会添加JSON序列化中间件,用于将控制器的返回值序列化为JSON格式。
  6. 路由特性:它会启用使用路由特性(如[HttpGet]、[HttpPost]等)进行路由的功能。
  7. 过滤器:它会注册并配置全局过滤器,用于在请求处理过程中执行一些通用的逻辑,如身份验证、异常处理等。
  8. 动作结果:它会注册并配置一些常用的动作结果类型,如ViewResult、JsonResult等。
  9. 视图组件:它会注册并配置视图组件,用于呈现可重用的UI组件。
  10. 路由器:它会注册并配置一个路由器,用于处理传入请求的路由匹配和调度。

总之,.AddMvc()方法是ASP.NET Core MVC框架中的一个重要方法,它用于配置应用程序的请求处理管道,添加必要的中间件和服务,以支持MVC模式的开发。对于ASP.NET Core 3.0及以上版本的应用程序,推荐使用.AddMvc()方法来启用和配置MVC功能。

腾讯云相关产品和产品介绍链接地址:

  • 云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 云数据库 MySQL 版:https://cloud.tencent.com/product/cdb_mysql
  • 云原生应用引擎(TKE):https://cloud.tencent.com/product/tke
  • 人工智能(AI):https://cloud.tencent.com/product/ai
  • 物联网(IoT):https://cloud.tencent.com/product/iotexplorer
  • 移动开发(移动推送、移动分析):https://cloud.tencent.com/product/mpns
  • 云存储(COS):https://cloud.tencent.com/product/cos
  • 区块链(BCS):https://cloud.tencent.com/product/bcs
  • 元宇宙(Tencent Meeting):https://meeting.tencent.com/
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

ASP.NET Core2.2到3.0你可能会遇到这些问题

So,就用vs2019+.NET Core3.0来跟着做一下Contoso University这个WEB应用,但是在基于3.0进行操作时候遇到了一些问题,所以我就查看了微软《从 ASP.NET Core...Json.NET 支持 作为提高 ASP.NET Core 共享框架工作一部分, Json.NET已从 ASP.NET Core 共享框架删除。...services.AddMvc() .AddNewtonsoftJson(); Newtonsoft 个性化设置可以设置为AddNewtonsoftJson: services.AddMvc(...若要启用运行时编译,请参阅ASP.NET Core Razor 文件编译。 总结 感觉微软在努力实现ASP.NET Core模块化,减小各种依赖,让包变得更小。...另外需要说明一点是,大伙如果是为了体验ASP.NET Core3.0的话,现在就可以,如果是用在生产环境的话最好还是等待正式版发布吧。

1.4K20

Ken杂谈从ASP.NET Core 2.1迁移到3.1

随后,.NET Core 2.1(LTS) 在2018年发布,Ken杂谈又紧跟版本升级到 .NET Core 2.1 后面.NET Core3.0发布,但不是LTS版本,再加上我又懒,所以就干脆等到...包 将项目依赖所有NuGet包更新至最新版本 update-package 当然,你可以用IDE提供界面进行操作,更加便捷 3、修改MVC注册方式 ASP.NET Core...) { services.AddMvc(); } ASP.NET Core 3.x public void ConfigureServices(IServiceCollection services...services) { services.AddRazorPages(); } 4、修改路由启动方式 ASP.NET Core 3.0 推荐使用端点路由(Endpoint Routing)...这个问题是发布时,IDE错误将要发布Project识别为 ASP.NET Core 2.x项目。只要保证发布目标文件夹为空即可。

1.5K20
  • .NET Core 学习资料精选:入门

    .NetFrameWork发展史 C# 语言版本发展史 2014.11月 .NET Core 项目启动,2016.06月 .NET Core 1.0 发布 微软 .NET Core3.0 规划蓝图 .NET...查询 NET API 及类库在各版本实现情况 ASP.NET Core 项目目录结构介绍 ASP.NET Core 程序自定义IP和端口几种方式 ASP.NET Core Startup类 ASP.NET...IActionResult) .NET Core 3.0 新 System.Text.Json API 配置 ASP.NET Core 配置(json、xml、命令行、环境变量、内存变量等) ASP.NET...路由 ASP.NET Core 模型绑定 ASP.NET Core 自定义模型绑定(IModelBinder) ASP.NET Core URL 重写中间件 依赖注入(IOC、DI) 什么是控制反转...新 Razor 机制 ASP.NET Core Razor SDK ASP.NET Core Razor 语法参考 ASP.NET Core Razor 页面介绍(OnGet、OnPost

    3.8K20

    如何使用Serilog.AspNetCore记录ASP.NET Core3.0MVC属性

    记录来自MVC其他信息 就目前而言,ASP.NET Core一个特征是许多行为被MVC“基础结构”锁定在了MVC框架内部来实现。端点路由是采用MVC功能并将其下移到核心框架首要工作之一。...ASP.NET Core团队一直在努力将更多MVC特定功能(例如模型绑定或操作结果)从MVC移除,然后“下推”到核心框架。...SerilogLoggingPageFilter>(); }); // ... other service registration } 无论你使用AddControllers,AddControllersWithViews,AddMvc...不幸是,这意味着您必须使用服务定位来从每个请求HttpContext检索单例IDiagnosticContext。...总结 默认情况下,当用Serilog请求日志记录中间件替换ASP.NET Core基础结构日志记录时,您会丢失一些信息(与开发环境默认配置相比)。

    3.6K10

    VS2019创建新项目居然没有.NET Core3.0模板?Bug?

    但是,今天有很多小伙伴在我ASP.NET Core 3.0 上gRPC服务模板初体验(多图)》文章留言说,装了VS2019后没有gRPC模板。What?...由于我在《ASP.NET Core 3.0 上gRPC服务模板初体验(多图)》文章已经进行了详细介绍,因此这里把创建步骤直接略过,如果你不了解的话,可以点击链接进行查看,下面直接看模板选择界面吧...居然没有.net core3.0模板?难道是我没装.net core3.0sdk嘛?不是说vs2019会自动帮我安装.net core3.0sdk吗?...于是乎,重新下载.net core3.0sdk,然后重新安装一番.net core3.0sdk。然后重复上述步骤,结果仍然一样。 难不成没有重启机器吗?...现在你可以愉快根据《ASP.NET Core 3.0 上gRPC服务模板初体验(多图)》这篇文章创建gRPC模板了。 总结 今天vs2019正式发布,庆祝,加经验分享,让大家愉快玩起来。

    2.6K40

    【A】兼容Core3.0后 Natasha 隔离域与热编译操作。

    一、 2.0预览版本增加了哪些功能 大部分为底层升级优化,例如: 引擎兼容 Core3.0 优化编译流程,增加编译前语法检测及日志,统一采用流加载方式 在 Vito 建议下改进了日志目录及命名...三、谈一谈‘热更新’ '热更新'是 Core3.0 亮点特性之一,不少小伙伴在看到译文时候可能就已经想到了N多场景,历经两代 .NET 洗礼,‘热更新’现在发展到什么样子了?...时间进入了 .NETCore 时代,AppDomain 在升级大潮受到了致命打击, Create 方法和 Unload 方法经岁月升级后源码充斥着 throw 和 throw ,完全丧失了功能,取而代之是...AppDomain 当初被定位在高性能、安全,历史证明这个定位跟 GPS 一样不准,ASP.NET 深受其害,历史车轮碾过了 ASP.NET 迎来了 ASP.NET Core ,在域功能被阉割期间,ASP.NET...Core3.0 随 ALC 一起还有反射自省信息。

    69710

    最近项目系之3——core3.0整合Senparc

    生产环境,记得把上述IsDebug配置为false,减少调试信息及提高性能。...MessageHandler可以重载方法很多,主要是响应微信终端动作一系列方法,比如用户发送文本、用户点击链接、用户发送图片、发送位置等,如果你需要处理对应事件...作为域名根目录公布出去,我们前端文件就是这么被公布出去,所以在开启Staticfile情况下,直接把XXXX.txt文件放置到wwwroot目录即可通过微信文件校验。...CreateMenu用来提供创建微信菜单api,我做法是把微信菜单定义在menu.json,然后代码读取并调用微信相关方法创建。之所以这样是因为菜单功能可能经常变化,所以做成配置化。...生产环境,记得给CreateMenu方法做鉴权,否则别人随便操你菜单,那可不是好玩儿。   GetMenu,获取当前微信菜单,这个不必多说。

    61230

    ASP.NET Core 2.0 : 六. 举个例子来聊聊它依赖注入

    本文通过一个维修工与工具库例子形象描述一下为什么要用依赖注入、它工作原理是什么样, 然后根据这个类比一下ASP.NET Core 依赖注入, 从而深刻了解它使用方法、注意事项以及回收机制等...ASP.NET Core 系列目录 本文主要内容: 1.为什么要用依赖注入(DI) 2.容器构建和规则 3.ASP.NET Core 2.0依赖注入 4.使用方法及需要注意问题 5.服务Dispose...图三   这就是ASP.NET Core 默认依赖注入方式,  对比一下图二是不是很像?   ...方法默认调用services.AddMvc(),  是IServiceCollection一个扩展方法 public static IMvcBuilder AddMvc(this IServiceCollection...在ASP.NET Core, Lifetime为Scoped实例在每次请求只创建一次. 4.使用方法及需要注意问题   对于上面的维修工例子, ASP.NET Core依赖注入还是有一些不一样地方

    2K30

    为什么你需要将代码迁移到ASP.NET Core 2.0?

    相信目前技术社区开发人员讨论最多问题就是:是否应该将代码迁移到 ASP.NET Core 2.0? ” 答案是肯定。...编译器会在使用新语言增强功能进行重新编译时,对代码进行优化。 TechEmpower 发现在超过 230 个使用 Web 框架基准框架ASP.NET Core 在性能上都取得了巨大进步。...(); } } Startup 类 AddMvc 和 UseMvc 会进行配置调用并激活“Razor Pages”功能。...这些 SPA 模板使用 JavaScript 服务功能在服务器上将 NodeJS 嵌入到 ASP.NET Core ,并将 JavaScript 服务器端应用程序作为.NET构建过程一部分进行编译...默认 ASP.NET Core 模板包含了一个新 WebHost.CreateDefaultBuilder,它会自动分配一个 Kestrel 服务器。

    90410

    ASP.NET Core 依赖注入基本用法

    ASP.NET Core 依赖注入 ASP.NET Core从框架层对依赖注入提供支持。也就是说,如果你不了解依赖注入,将很难适应 ASP.NET Core开发模式。...控制反转关系图如下(图片来源于官网): image.png ASP.NET Core依赖注入 上面介绍了依赖注入基本概念,那么在 ASP.NET Core,我们该如何使用依赖注入呢?...在 ASP.NET Core已经内置了一套依赖注入容器,我们可以直接使用。...如果要在中间件中使用Scoped服务,则需要将服务注入到Invoke或InvokeAsync方法参数,此处可以参考 ASP.NET Core 中间件基本用法 Singleton:单例服务,表示每个应用程序域只会创建一个实力...基于约定,ASP.NET Core推荐我们采用类似于Add{SERVICE_NAME}方式添加服务注册,比如services.AddMvc(),这种方式可以通过扩展方法来实现,代码如下: namespace

    2K20

    ASP.NET几种分页

    https://blog.csdn.net/huyuyang6688/article/details/39644255         1、通过DataGrid控件实现分页         ASP.NET...DataGrid控件自带了分页功能,当绑定了DataGrid数据源之后,需要对DataGrid控件进行一些设置: ?        ...3、通过存储过程分页        通过存储过程实现分页,根据条件,只从数据库中提取出要显示那一页数据,那么就涉及到了假如数据库中共有100条数据,如何从数据库取出第50到第60条数据来。...这时想到了牛腩大哥视频里所讲真假分页以及如何提取表中间连续几条数据。        在程序定义如下变量pageSize(每个页面显示多少条记录)、curPage(当前在第几页)。...and @endPos END GO        这种方法优点在于,指定了要显示页数和每页大小之后,只需从数据库中提取要显示那一页数据即可,不需要将大量数据全部提取出来,也就是牛腩视频说到

    2.6K20

    ASP.NET Core ServiceProvider

    前言# 在 ASP.NET Core ,微软提供了一套默认依赖注入实现,该实现对应包为:Microsoft.Extensions.DependencyInjection,我们可以通过查看其对应开源仓库看一下它具体实现...基于该实现,我们不必显式创建我们服务对象,可以将其统一注入到 ServiceProvider 中进行集中维护,使用时候直接在该对象获取即可。让我们在编写业务逻辑时,不用太关注对象创建和销毁。...这也是为什么现在有些最佳实践建议不要过多使用 New 方式来获取对象。在本文中,我们将一起了解一下如何实现一个自己 ServiceProvider。...,我们需要引入一个新集合,这个新集合是用于存储我们相应实例对象,在注册时候我们只记录注册类型,在需要访问到相应服务时,我们只需要在这个实例集合列表访问,如果发现我们需要服务还未被实例化,那我们再进行实例化...,这和 DotNetCore ServiceProvider 方式很相似,它不依赖于我们服务注册顺序,都能正常进行构造。

    1.9K20

    ASP.NET CoreController

    ASP.NET CORE出现之前我们实现Controller,MVC都继承自Controller基类,WebApi的话继承自ApiController。...现在ASP.NET CORE把MVC跟WebApi合并了,已经不再区分MVC或者WebApi。ASP.NET COREController继承结构也发生了变化。...POCO Controller 除了继承Controller、ControllerBase之外,ASP.NET CORE框架可以让你POCO类直接变成Controller。...ASP.NET CORE框架默认会查找后缀为“Controller”类,并把它当做真正Controller使用,在路由系统最终匹配Controller时候它也会被尝试匹配。...使用NonControllerAttribute 如果你一个类名恰巧包含“Controller”后缀,但你并不想ASP.NET CORE框架发现它,你可以在类上加上NonControllerAttribute

    1.7K20

    asp dotnet core 3.0 接口返回 json 使用 PascalCase 格式

    在 asp dotnet core 3.0 默认 webapi 返回接口都是返回 json 格式,同时这个 json 格式使用是 CamelCase 属性名风格。...如果想要兼容之前格式,让 webapi 返回 json 属性名使用 PascalCase 格式,那么请看本文 默认 ASP.NET Core 3.0 WebAPI json 返回值属性使用首字符小写...CamelCase 属性名风格,可以通过在 ConfigureServices 方法配置让返回值属性使用其他风格 最简单方法是设置 PropertyNamingPolicy 属性,请看代码...就是 CamelCase 风格 注意,在一些版本,可以是 AddMvc 方法,请看下面 services.AddMvc() .AddNewtonsoftJson(options =>...options.SerializerSettings.ContractResolver = new DefaultContractResolver()); Migrate from ASP.NET

    3K20
    领券