Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge to Live #33215

Merged
merged 3 commits into from
Jul 31, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
665 changes: 172 additions & 493 deletions aspnetcore/blazor/components/integration.md

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions aspnetcore/getting-started/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ uid: getting-started
---
# Tutorial: Get started with ASP.NET Core

[!INCLUDE[](~/includes/not-latest-version.md)]

This tutorial shows how to create and run an ASP.NET Core web app using the .NET CLI.

You'll learn how to:
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/aspnetcore.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/aspnetcore
---
# gRPC services with ASP.NET Core

[!INCLUDE[](~/includes/not-latest-version.md)]

:::moniker range=">= aspnetcore-8.0"
This document shows how to get started with gRPC services using ASP.NET Core.

Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/authn-and-authz.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/authn-and-authz
---
# Authentication and authorization in gRPC for ASP.NET Core

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)
:::moniker range=">= aspnetcore-6.0"

Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/basics
---
# gRPC services with C\#

[!INCLUDE[](~/includes/not-latest-version.md)]

:::moniker range=">= aspnetcore-6.0"
This document outlines the concepts needed to write [gRPC](https://grpc.io/docs/guides/) apps in C#. The topics covered here apply to both [C-core](https://grpc.io/blog/grpc-stacks)-based and ASP.NET Core-based gRPC apps.

Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/browser.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/browser
---
# Use gRPC in browser apps

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

It's not possible to directly call a gRPC service from a browser. gRPC uses HTTP/2 features, and no browser provides the level of control required over web requests to support a gRPC client.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/client.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/client
---
# Call gRPC services with the .NET client

[!INCLUDE[](~/includes/not-latest-version.md)]

A .NET gRPC client library is available in the [Grpc.Net.Client](https://www.nuget.org/packages/Grpc.Net.Client) NuGet package. This document explains how to:

* Configure a gRPC client to call gRPC services.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/clientfactory.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/clientfactory
---
# gRPC client factory integration in .NET

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

:::moniker range=">= aspnetcore-6.0"
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/code-first.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/code-first
---
# Code-first gRPC services and clients with .NET

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk) and [Marc Gravell](https://twitter.com/marcgravell)

:::moniker range=">= aspnetcore-6.0"
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/comparison.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/comparison
---
# Compare gRPC services with HTTP APIs

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

This article explains how [gRPC services](https://grpc.io/docs/guides/) compare to HTTP APIs with JSON (including ASP.NET Core [web APIs](xref:web-api/index)). The technology used to provide an API for your app is an important choice, and gRPC offers unique benefits compared to HTTP APIs. This article discusses the strengths and weaknesses of gRPC and recommends scenarios for using gRPC over other technologies.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ uid: grpc/configuration
---
# gRPC for .NET configuration

[!INCLUDE[](~/includes/not-latest-version.md)]

## Configure services options

gRPC services are configured with `AddGrpc` in `Startup.cs`. Configuration options are in the [`Grpc.AspNetCore.Server`](https://www.nuget.org/packages/Grpc.AspNetCore.Server) package.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/deadlines-cancellation.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/deadlines-cancellation
---
# Reliable gRPC services with deadlines and cancellation

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

Deadlines and cancellation are features used by gRPC clients to abort in-progress calls. This article discusses why deadlines and cancellation are important, and how to use them in .NET gRPC apps.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/diagnostics.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/diagnostics
---
# Logging and diagnostics in gRPC on .NET

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

:::moniker range=">= aspnetcore-6.0"
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/dotnet-grpc.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/dotnet-grpc
---
# Manage Protobuf references with dotnet-grpc

[!INCLUDE[](~/includes/not-latest-version.md)]

`dotnet-grpc` is a .NET Core Global Tool for managing [Protobuf (`.proto`)](xref:grpc/basics#proto-file) references within a .NET gRPC project. The tool can be used to add, refresh, remove, and list Protobuf references.

## Installation
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/error-handling.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/error-handling
---
# Error handling with gRPC

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

This article discusses error handling and gRPC:
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/grpcweb.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/grpcweb
---
# gRPC-Web in ASP.NET Core gRPC apps

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

:::moniker range=">= aspnetcore-8.0"
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/health-checks.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/health-checks
---
# gRPC health checks in ASP.NET Core

[!INCLUDE[](~/includes/not-latest-version.md)]

:::moniker range=">= aspnetcore-6.0"

By [James Newton-King](https://twitter.com/jamesnk)
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/index
---
# Overview for gRPC on .NET

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

:::moniker range=">= aspnetcore-6.0"
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/interceptors.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/interceptors
---
# gRPC interceptors on .NET

[!INCLUDE[](~/includes/not-latest-version.md)]

By [Ernest Nguyen](https://github.com/erni27)

Interceptors are a gRPC concept that allows apps to interact with incoming or outgoing gRPC calls. They offer a way to enrich the request processing pipeline.
Expand Down
6 changes: 6 additions & 0 deletions aspnetcore/grpc/interprocess-namedpipes.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,12 @@ uid: grpc/interprocess-namedpipes
---
# Inter-process communication with gRPC and Named pipes

<!-- UPDATE 9.0 Activate after release and INCLUDE is updated

[!INCLUDE[](~/includes/not-latest-version.md)]

-->

By [James Newton-King](https://twitter.com/jamesnk)

.NET supports inter-process communication (IPC) using gRPC. For more information about getting started with using gRPC to communicate between processes, see [Inter-process communication with gRPC](xref:grpc/interprocess).
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/interprocess-uds.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/interprocess-uds
---
# Inter-process communication with gRPC and Unix domain sockets

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

.NET supports inter-process communication (IPC) using gRPC. For more information about getting started with using gRPC to communicate between processes, see [Inter-process communication with gRPC](xref:grpc/interprocess).
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/interprocess.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/interprocess
---
# Inter-process communication with gRPC

[!INCLUDE[](~/includes/not-latest-version.md)]

:::moniker range=">= aspnetcore-8.0"

Processes running on the same machine can be designed to communicate with each other. Operating systems provide technologies for enabling fast and efficient [inter-process communication (IPC)](https://wikipedia.org/wiki/Inter-process_communication). Popular examples of IPC technologies are Unix domain sockets and Named pipes.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/json-transcoding-binding.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/json-transcoding-binding
---
# Configure HTTP and JSON for gRPC JSON transcoding

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

gRPC JSON transcoding creates RESTful JSON web APIs from gRPC methods. It uses annotations and options for customizing how a RESTful API maps to the gRPC methods.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/json-transcoding-openapi.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/json-transcoding-openapi
---
# gRPC JSON transcoding documentation with Swagger / OpenAPI

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

[OpenAPI (Swagger)](https://swagger.io/specification/) is a language-agnostic specification for describing REST APIs. gRPC JSON transcoding supports generating OpenAPI from transcoded RESTful APIs. The [`Microsoft.AspNetCore.Grpc.Swagger`](https://www.nuget.org/packages/Microsoft.AspNetCore.Grpc.Swagger) package:
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/json-transcoding.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ ms.custom: engagement-fy23
---
# gRPC JSON transcoding in ASP.NET Core

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

:::moniker range=">= aspnetcore-8.0"
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/loadbalancing.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/loadbalancing
---
# gRPC client-side load balancing

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

Client-side load balancing is a feature that allows gRPC clients to distribute load optimally across available servers. This article discusses how to configure client-side load balancing to create scalable, high-performance gRPC apps in .NET.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/migration
---
# Migrate gRPC from C-core to gRPC for .NET

[!INCLUDE[](~/includes/not-latest-version.md)]

Due to the implementation of the underlying stack, not all features work in the same way between [C-core-based gRPC](https://grpc.io/blog/grpc-stacks) apps and gRPC for .NET. This document highlights the key differences for migrating between the two stacks.

> [!IMPORTANT]
Expand Down
6 changes: 6 additions & 0 deletions aspnetcore/grpc/native-aot.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,12 @@ uid: grpc/native-aot
---
# gRPC and Native AOT

<!-- UPDATE 9.0 Activate after release and INCLUDE is updated

[!INCLUDE[](~/includes/not-latest-version.md)]

-->

By [James Newton-King](https://twitter.com/jamesnk)

gRPC supports [.NET native ahead-of-time (AOT)](/dotnet/core/deploying/native-aot/) in .NET 8. Native AOT enables publishing gRPC client and server apps as small, fast native executables.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/netstandard.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/netstandard
---
# Use gRPC client with .NET Standard 2.0

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

This article discusses how to use the .NET gRPC client with .NET implementations that support [.NET Standard 2.0](/dotnet/standard/net-standard).
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/performance.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/performance
---
# Performance best practices with gRPC

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

gRPC is designed for high-performance services. This document explains how to get the best performance possible from gRPC.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/protobuf.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/protobuf
---
# Create Protobuf messages for .NET apps

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk) and [Mark Rendle](https://twitter.com/markrendle)

gRPC uses [Protobuf](https://developers.google.com/protocol-buffers) as its Interface Definition Language (IDL). Protobuf IDL is a language neutral format for specifying the messages sent and received by gRPC services. Protobuf messages are defined in `.proto` files. This document explains how Protobuf concepts map to .NET.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/retries.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/retries
---
# Transient fault handling with gRPC retries

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

gRPC retries is a feature that allows gRPC clients to automatically retry failed calls. This article discusses how to configure a retry policy to make resilient, fault tolerant gRPC apps in .NET.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/security.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ uid: grpc/security
---
# Security considerations in gRPC for ASP.NET Core

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

This article provides information on securing gRPC with .NET Core.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/services.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/services
---
# Create gRPC services and methods

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

This document explains how to create gRPC services and methods in C#. Topics include:
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/supported-platforms.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/supported-platforms
---
# gRPC on .NET supported platforms

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

This article discusses the requirements and supported platforms for using gRPC with .NET. There are different requirements for the two major gRPC workloads:
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/test-client.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ uid: grpc/test-client
---
# Mock gRPC client in tests

[!INCLUDE[](~/includes/not-latest-version.md)]

By: [James Newton-King](https://twitter.com/jamesnk)

Testing is an important aspect of building stable and maintainable software. Part of writing high-quality tests is removing external dependencies. This article discusses using mock gRPC clients in tests to remove gRPC calls to external servers.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/test-services.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ uid: grpc/test-services
---
# Test gRPC services in ASP.NET Core

[!INCLUDE[](~/includes/not-latest-version.md)]

By: [James Newton-King](https://twitter.com/jamesnk)

Testing is an important aspect of building stable and maintainable software. This article discusses how to test ASP.NET Core gRPC services.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/test-tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/test-tools
---
# Test gRPC services with gRPCurl and gRPCui in ASP.NET Core

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)
:::moniker range=">= aspnetcore-6.0"
Tooling is available for gRPC that allows developers to test services without building client apps:
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/versioning.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/versioning
---
# Versioning gRPC services

[!INCLUDE[](~/includes/not-latest-version.md)]

By [James Newton-King](https://twitter.com/jamesnk)

New features added to an app can require gRPC services provided to clients to change, sometimes in unexpected and breaking ways. When gRPC services change:
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/grpc/why-migrate-wcf-to-dotnet-grpc.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ uid: grpc/wcf
---
# gRPC for Windows Communication Foundation (WCF) developers

[!INCLUDE[](~/includes/not-latest-version.md)]

This article provides a summary of why ASP.NET Core gRPC is a good fit for Windows Communication Foundation (WCF) developers who want to migrate to modern architectures and platforms.

## Comparison to WCF
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/host-and-deploy/app-offline.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ uid: host-and-deploy/iis/app-offline
---
# App Offline file (`app_offline.htm`)

[!INCLUDE[](~/includes/not-latest-version.md)]

The App Offline file (`app_offline.htm`) is used by the ASP.NET Core Module to shut down an app.

If a file with the name `app_offline.htm` is detected in the root directory of an app, the ASP.NET Core Module attempts to gracefully shut down the app and stop processing incoming requests. If the app is still running after the number of seconds defined in `shutdownTimeLimit`, the ASP.NET Core Module stops the running process.
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/host-and-deploy/aspnet-core-module.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ uid: host-and-deploy/aspnet-core-module

# ASP.NET Core Module (ANCM) for IIS

[!INCLUDE[](~/includes/not-latest-version.md)]

:::moniker range=">= aspnetcore-5.0"

The ASP.NET Core Module (ANCM) is a native IIS module that plugs into the IIS pipeline, allowing ASP.NET Core applications to work with IIS. Run ASP.NET Core apps with IIS by either:
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/host-and-deploy/azure-apps/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ uid: host-and-deploy/azure-apps/index
---
# Deploy ASP.NET Core apps to Azure App Service

[!INCLUDE[](~/includes/not-latest-version.md)]

[Azure App Service](https://azure.microsoft.com/services/app-service/) is a [Microsoft cloud computing platform service](https://azure.microsoft.com/) for hosting web apps, including ASP.NET Core.

[!INCLUDE[](~/includes/reliableWAP_H2.md)]
Expand Down
2 changes: 2 additions & 0 deletions aspnetcore/host-and-deploy/azure-iis-errors-reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ uid: host-and-deploy/azure-iis-errors-reference

# Common error troubleshooting for Azure App Service and IIS with ASP.NET Core

[!INCLUDE[](~/includes/not-latest-version.md)]

:::moniker range=">= aspnetcore-6.0"

This topic describes the most common errors and provides troubleshooting advice when hosting ASP.NET Core apps on Azure Apps Service and IIS.
Expand Down
Loading
Loading