Skip to content

Commit 636efd1

Browse files
authored
Merge pull request #17879 from dotnet/master
Update live with master
2 parents 49c91ad + b6041b1 commit 636efd1

4 files changed

Lines changed: 100 additions & 17 deletions

File tree

Binary file not shown.
Binary file not shown.

aspnetcore/includes/blazor-security/fetchdata-component.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,11 @@ If the request failed because the token couldn't be provisioned without user int
1515

1616
```razor
1717
@page "/fetchdata"
18-
...
18+
@using Microsoft.AspNetCore.Authorization
19+
@using Microsoft.AspNetCore.Components.WebAssembly.Authentication
20+
@inject IAccessTokenProvider AuthenticationService
21+
@inject NavigationManager Navigation
22+
@using {APPLICATION NAMESPACE}.Shared
1923
@attribute [Authorize]
2024
2125
...

aspnetcore/introduction-to-aspnet-core.md

Lines changed: 95 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,101 @@
11
---
22
title: Introduction to ASP.NET Core
33
author: rick-anderson
4-
description: Get an introduction to ASP.NET Core, a cross-platform, high-performance, open-source framework for building modern, cloud-based, Internet-connected applications.
4+
description: Get an introduction to ASP.NET Core, a cross-platform, high-performance, open-source framework for building modern, cloud-enabled, Internet-connected apps.
55
ms.author: riande
66
ms.custom: mvc
7-
ms.date: 11/12/2019
7+
ms.date: 04/17/2020
88
no-loc: [Blazor, SignalR]
99
uid: index
1010
---
1111
# Introduction to ASP.NET Core
1212

1313
By [Daniel Roth](https://github.com/danroth27), [Rick Anderson](https://twitter.com/RickAndMSFT), and [Shaun Luttin](https://twitter.com/dicshaunary)
1414

15-
ASP.NET Core is a cross-platform, high-performance, [open-source](https://github.com/aspnet/home) framework for building modern, cloud-based, Internet-connected applications. With ASP.NET Core, you can:
15+
::: moniker range=">= aspnetcore-3.0"
1616

17-
* Build web apps and services, [IoT](https://www.microsoft.com/internet-of-things/) apps, and mobile backends.
17+
ASP.NET Core is a cross-platform, high-performance, [open-source](https://github.com/dotnet/aspnetcore) framework for building modern, cloud-enabled, Internet-connected apps. With ASP.NET Core, you can:
18+
19+
* Build web apps and services, [Internet of Things (IoT)](https://www.microsoft.com/internet-of-things/) apps, and mobile backends.
20+
* Use your favorite development tools on Windows, macOS, and Linux.
21+
* Deploy to the cloud or on-premises.
22+
* Run on [.NET Core](/dotnet/core/introduction).
23+
24+
## Why choose ASP.NET Core?
25+
26+
Millions of developers use or have used [ASP.NET 4.x](/aspnet/overview) to create web apps. ASP.NET Core is a redesign of ASP.NET 4.x, including architectural changes that result in a leaner, more modular framework.
27+
28+
[!INCLUDE[](~/includes/benefits.md)]
29+
30+
## Build web APIs and web UI using ASP.NET Core MVC
31+
32+
ASP.NET Core MVC provides features to build [web APIs](xref:tutorials/first-web-api) and [web apps](xref:tutorials/razor-pages/index):
33+
34+
* The [Model-View-Controller (MVC) pattern](xref:mvc/overview) helps make your web APIs and web apps testable.
35+
* [Razor Pages](xref:razor-pages/index) is a page-based programming model that makes building web UI easier and more productive.
36+
* [Razor markup](xref:mvc/views/razor) provides a productive syntax for [Razor Pages](xref:razor-pages/index) and [MVC views](xref:mvc/views/overview).
37+
* [Tag Helpers](xref:mvc/views/tag-helpers/intro) enable server-side code to participate in creating and rendering HTML elements in Razor files.
38+
* Built-in support for [multiple data formats and content negotiation](xref:web-api/advanced/formatting) lets your web APIs reach a broad range of clients, including browsers and mobile devices.
39+
* [Model binding](xref:mvc/models/model-binding) automatically maps data from HTTP requests to action method parameters.
40+
* [Model validation](xref:mvc/models/validation) automatically performs client-side and server-side validation.
41+
42+
## Client-side development
43+
44+
ASP.NET Core integrates seamlessly with popular client-side frameworks and libraries, including [Blazor](xref:blazor/index), [Angular](xref:spa/angular), [React](xref:spa/react), and [Bootstrap](https://getbootstrap.com/). For more information, see <xref:blazor/index> and related topics under *Client-side development*.
45+
46+
<a name="target-framework"></a>
47+
48+
## ASP.NET Core target frameworks
49+
50+
ASP.NET Core 3.x and later can only target .NET Core. Generally, ASP.NET Core is composed of [.NET Standard](/dotnet/standard/net-standard) libraries. Libraries written with .NET Standard 2.0 run on any [.NET platform that implements .NET Standard 2.0](/dotnet/standard/net-standard#net-implementation-support).
51+
52+
There are several advantages to targeting .NET Core, and these advantages increase with each release. Some advantages of .NET Core over .NET Framework include:
53+
54+
* Cross-platform. Runs on Windows, macOS, and Linux.
55+
* Improved performance
56+
* [Side-by-side versioning](/dotnet/standard/choosing-core-framework-server#a-need-for-side-by-side-of-net-versions-per-application-level)
57+
* New APIs
58+
* Open source
59+
60+
## Recommended learning path
61+
62+
We recommend the following sequence of tutorials for an introduction to developing ASP.NET Core apps:
63+
64+
1. Follow a tutorial for the app type you want to develop or maintain.
65+
66+
|App type |Scenario |Tutorial |
67+
|----------|----------|----------|
68+
|Web app | New server-side web UI development |[Get started with Razor Pages](xref:tutorials/razor-pages/razor-pages-start) |
69+
|Web app | Maintaining an MVC app |[Get started with MVC](xref:tutorials/first-mvc-app/start-mvc)|
70+
|Web app | Client-side web UI development |[Get started with Blazor](xref:tutorials/first-blazor-app) |
71+
|Web API | RESTful HTTP services |[Create a web API](xref:tutorials/first-web-api)&dagger; |
72+
|Remote Procedure Call app | Contract-first services using Protocol Buffers |[Get started with a gRPC service](xref:tutorials/grpc/grpc-start) |
73+
|Real-time app | Bidirectional communication between servers and connected clients |[Get started with SignalR](xref:tutorials/signalr) |
74+
75+
1. Follow a tutorial that shows how to do basic data access.
76+
77+
|Scenario |Tutorial |
78+
|----------|----------|
79+
|New development |[Razor Pages with Entity Framework Core](xref:data/ef-rp/intro) |
80+
|Maintaining an MVC app |[MVC with Entity Framework Core](xref:data/ef-mvc/intro) |
81+
82+
1. Read an overview of ASP.NET Core [fundamentals](xref:fundamentals/index) that apply to all app types.
83+
84+
1. Browse the table of contents for other topics of interest.
85+
86+
&dagger;There's also an [interactive web API tutorial](/learn/modules/build-web-api-net-core). No local installation of development tools is required. The code runs in an [Azure Cloud Shell](https://azure.microsoft.com/features/cloud-shell/) in your browser, and [curl](https://curl.haxx.se/) is used for testing.
87+
88+
## Migrate from .NET Framework
89+
90+
For a reference guide to migrating ASP.NET 4.x apps to ASP.NET Core, see <xref:migration/proper-to-2x/index>.
91+
92+
::: moniker-end
93+
94+
::: moniker range="< aspnetcore-3.0"
95+
96+
ASP.NET Core is a cross-platform, high-performance, [open-source](https://github.com/dotnet/aspnetcore) framework for building modern, cloud-enabled, Internet-connected apps. With ASP.NET Core, you can:
97+
98+
* Build web apps and services, [Internet of Things (IoT)](https://www.microsoft.com/internet-of-things/) apps, and mobile backends.
1899
* Use your favorite development tools on Windows, macOS, and Linux.
19100
* Deploy to the cloud or on-premises.
20101
* Run on [.NET Core or .NET Framework](/dotnet/articles/standard/choosing-core-framework-server).
@@ -49,7 +130,7 @@ ASP.NET Core 2.x can target .NET Core or .NET Framework. ASP.NET Core apps targe
49130

50131
ASP.NET Core 2.x is supported on .NET Framework versions that implement .NET Standard 2.0:
51132

52-
* .NET Framework latest version is strongly recommended.
133+
* .NET Framework latest version is recommended.
53134
* .NET Framework 4.6.1 and later.
54135

55136
ASP.NET Core 3.0 and later will only run on .NET Core. For more details regarding this change, see [A first look at changes coming in ASP.NET Core 3.0](https://blogs.msdn.microsoft.com/webdev/2018/10/29/a-first-look-at-changes-coming-in-asp-net-core-3-0/).
@@ -68,36 +149,34 @@ We're working hard to close the API gap from .NET Framework to .NET Core. The [W
68149

69150
We recommend the following sequence of tutorials and articles for an introduction to developing ASP.NET Core apps:
70151

71-
1. Follow a tutorial for the type of app you want to develop or maintain:
152+
1. Follow a tutorial for the type of app you want to develop or maintain.
72153

73154
|App type |Scenario |Tutorial |
74155
|----------|----------|----------|
75156
|Web app | For new development |[Get started with Razor Pages](xref:tutorials/razor-pages/razor-pages-start) |
76157
|Web app | For maintaining an MVC app |[Get started with MVC](xref:tutorials/first-mvc-app/start-mvc)|
77-
|Web API | |[Create a web API](xref:tutorials/first-web-api)\* |
158+
|Web API | |[Create a web API](xref:tutorials/first-web-api)&dagger; |
78159
|Real-time app | |[Get started with SignalR](xref:tutorials/signalr) |
79-
|Blazor app | |[Get started with Blazor](xref:blazor/get-started) |
80-
|Remote Procedure Call app | |[Get started with a gRPC service](xref:tutorials/grpc/grpc-start) |
81160

82-
1. Follow a tutorial that shows how to do basic data access:
161+
1. Follow a tutorial that shows how to do basic data access.
83162

84163
|Scenario |Tutorial |
85164
|----------|----------|
86165
| For new development |[Razor Pages with Entity Framework Core](xref:data/ef-rp/intro) |
87-
| For maintaining an MVC app |[MVC with Entity Framework Core](xref:data/ef-mvc/intro)
88-
89-
1. Read an overview of ASP.NET Core features that apply to all app types:
166+
| For maintaining an MVC app |[MVC with Entity Framework Core](xref:data/ef-mvc/intro) |
90167

91-
* [Fundamentals](xref:fundamentals/index)
168+
1. Read an overview of ASP.NET Core [fundamentals](xref:fundamentals/index) that apply to all app types.
92169

93170
1. Browse the Table of Contents for other topics of interest.
94171

95-
\* There is a new [web API tutorial that you follow entirely in the browser](https://docs.microsoft.com/learn/modules/build-web-api-net-core), no local IDE installation required. The code runs in an [Azure Cloud Shell](https://azure.microsoft.com/features/cloud-shell/), and [curl](https://curl.haxx.se/) is used for testing.
172+
&dagger;There's also a [web API tutorial that you follow entirely in the browser](/learn/modules/build-web-api-net-core), no local IDE installation required. The code runs in an [Azure Cloud Shell](https://azure.microsoft.com/features/cloud-shell/), and [curl](https://curl.haxx.se/) is used for testing.
96173

97-
## Migration from the .NET Framework
174+
## Migrate from .NET Framework
98175

99176
For a reference guide to migrating ASP.NET apps to ASP.NET Core, see <xref:migration/proper-to-2x/index>.
100177

178+
::: moniker-end
179+
101180
## How to download a sample
102181

103182
Many of the articles and tutorials include links to sample code.

0 commit comments

Comments
 (0)