ASP.NET Core 简介

简介: 一、什么是ASP.NET CoreASP.NET Core是一个跨平台,高性能的开源框架,用于构建现代的、基于云计算的互联网应用程序。使用ASP.NET Core,您可以做到: - 构建Web应用程序和服务,物联网应用程序和移动后端。


img_f383c894515b868a478a7522810f9ff7.png

一、什么是ASP.NET Core

ASP.NET Core是一个跨平台,高性能的开源框架,用于构建现代的、基于云计算的互联网应用程序。

使用ASP.NET Core,您可以做到:

 - 构建Web应用程序和服务,物联网应用程序和移动后端。

 - 在Windows,MacOS和Linux上使用您最喜爱的开发工具。

 - 部署到云或本地。

 - 在.NET Core或.NET Framework上运行。

二、为什么使用ASP.NET Core?

数百万开发人员已经使用(并继续使用)ASP.NET 4.x来创建Web应用程序。 ASP.NET Core是ASP.NET 4.x的重新设计,是更精简,更模块化的框架。

ASP.NET Core特点:

通过统一的框架构建Web UI和Web API

整合了现代的客户端框架和开发流程

适用于云的、基于环境的配置系统

内置依赖注入

一个轻量级,高性能,模块化的HTTP请求管道

能够在IIS,Nginx,Apache,Docker、Self-Host上进行托管

面向.NET Core的side-by-side应用程序版本控制

简化现代Web开发的工具

能够在Windows,MacOS和Linux上构建和运行

完全开源并以社区为重点

ASP.NET Core完全以NuGet包的形式提供。这使您可以优化您的应用程序,只包括必要的NuGet包。实际上,针对.NET Core的ASP.NET Core 2.x应用程序只需要一个NuGet包。较小的应用程序面使其更安全,并减少的不必要的服务开销,提升性能。

三、使用ASP.NET Core MVC构建Web API和Web UI

ASP.NET Core MVC提供了构建Web API和Web应用程序的功能:

模型 - 视图 - 控制器(MVC)模式有助于使您的Web API和Web应用程序可测试。

Razor Pages(ASP.NET Core 2.0中的新增功能)是一个基于页面的编程模型,可以使构建Web UI更加简单高效。

Razor标记为Razor Pages和MVC视图提供了高效的语法。

标签助手允许服务器端代码参与在Razor文件中创建和呈现HTML元素。

对多种数据格式和内容协商的内置支持可让您的Web API访问广泛的客户端,包括浏览器和移动设备。

模型绑定自动将数据从HTTP请求映射到操作方法参数。

模型验证自动执行客户端和服务器端验证。

四、客户端开发

ASP.NET Core与流行的客户端框架和库(包括Angular,React和Bootstrap)无缝集成。有关更多详细信息,请参阅客户端开发

相关文章
|
6月前
|
开发框架 .NET C#
ASP.NET Core Blazor 路由配置和导航
大家好,我是码农刚子。本文系统介绍Blazor单页应用的路由机制,涵盖基础配置、路由参数、编程式导航及高级功能。通过@page指令定义路由,支持参数约束、可选参数与通配符捕获,结合NavigationManager实现页面跳转与参数传递,并演示用户管理、产品展示等典型场景,全面掌握Blazor路由从入门到实战的完整方案。
536 6
|
开发框架 .NET 开发者
简化 ASP.NET Core 依赖注入(DI)注册-Scrutor
Scrutor 是一个简化 ASP.NET Core 应用程序中依赖注入(DI)注册过程的开源库,支持自动扫描和注册服务。通过简单的配置,开发者可以轻松地从指定程序集中筛选、注册服务,并设置其生命周期,同时支持服务装饰等高级功能。适用于大型项目,提高代码的可维护性和简洁性。仓库地址:<https://github.com/khellang/Scrutor>
509 5
|
开发框架 算法 中间件
ASP.NET Core 中的速率限制中间件
在ASP.NET Core中,速率限制中间件用于控制客户端请求速率,防止服务器过载并提高安全性。通过`AddRateLimiter`注册服务,并配置不同策略如固定窗口、滑动窗口、令牌桶和并发限制。这些策略可在全局、控制器或动作级别应用,支持自定义响应处理。使用中间件`UseRateLimiter`启用限流功能,并可通过属性禁用特定控制器或动作的限流。这有助于有效保护API免受滥用和过载。 欢迎关注我的公众号:Net分享 (239字符)
370 1
|
开发框架 缓存 .NET
GraphQL 与 ASP.NET Core 集成:从入门到精通
本文详细介绍了如何在ASP.NET Core中集成GraphQL,包括安装必要的NuGet包、创建GraphQL Schema、配置GraphQL服务等步骤。同时,文章还探讨了常见问题及其解决方法,如处理复杂查询、错误处理、性能优化和实现认证授权等,旨在帮助开发者构建灵活且高效的API。
431 3
|
前端开发 NoSQL .NET
一起谈.NET技术,重构TekPub——从ASP.NET MVC框架迁移到Ruby on Rails
  TekPub是一个面向开发人员的站点,致力于为开发人员提供一系列主题的在线培训,主题范围非常广泛,从微软的O/R Mapping框架Microsoft Entity Framework,到如何使用Ruby on Rails技术编写自己的日志引擎等内容都有涉及。
1786 0
|
.NET
一起谈.NET技术,ASP.NET 4.0 一些隐性的扩展
  ASP.NET 4.0在很多方面都做了改进,在这篇ASP.NET 4.0白皮书就描述了很多ASP.NET 4.0的机制改变和改进。在我的博客中,也有几篇关于ASP.NET4.0的特性修改的文章。但是作为一个全新的框架和运行时,内部肯定还会有很多API和扩展点不会暴露的那么明显。
932 0
|
Web App开发 .NET 数据库
一起谈.NET技术,ASP.NET中如何正确使用Session
  Asp.Net中的Session要比Asp中的Session灵活和强大很多,同时也复杂很多;看到有一些Asp.Net开发人员报怨说Session不稳定,莫名其妙的丢失,其实这正是Asp.Net改进的地方之一。
1153 0
|
XML 前端开发 .NET
一起谈.NET技术,ASP.NET MVC 2生成动态表单的一种最简单的思路
  在BPM、OA等系统中,都会存在一个表单设计器。有些是通过操作gridview来完成一个表单的设计;有些是通过类似VS拖拽的方法完成一个表单的设计。很明显后面一种优越于前面一种。无论是哪种,最后都会产生一些XML之类的表单结构的数据。
1460 0
|
Web App开发 .NET 数据安全/隐私保护
一起谈.NET技术,ASP.NET身份验证机制membership入门——项目
  前面说了很多关于membership的内容,感觉内容有点凌乱,内容都是一个个知识点,下面我们通过一个小的项目,来把所有的相关内容串一下。   首先描述一下需求:   我们要做一个最简单的网站。有三类用户:匿名用户,员工,管理员,网站结构如下:        admin目录下的页面只允许admin角色的用户访问,employee目录下的页面只允许emp角色的用户访问。
1217 0
|
缓存 算法 .NET
一起谈.NET技术,ASP.NET缓存全解析7:第三方分布式缓存解决方案 Memcached和Cacheman
  ASP.NET缓存全解析文章索引 ASP.NET缓存全解析1:缓存的概述 ASP.NET缓存全解析2:页面输出缓存 ASP.NET缓存全解析3:页面局部缓存 ASP.NET缓存全解析4:应用程序数据缓存 ASP.NET 缓存全解析5:文件缓存依赖 ASP.NET 缓存全解析6:数据库缓存依赖 ASP.NET 缓存全解析7:第三方分布式缓存解决方案 Memcached和Cacheman   Memcached — 分布式缓存系统    1.Memcached是什么?   Memcached是高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。
1304 0