From fabda27d7d5dc8ec1b51c6c70a2f9b01eebb9bdb Mon Sep 17 00:00:00 2001 From: guardrex <1622880+guardrex@users.noreply.github.com> Date: Mon, 18 Sep 2023 11:46:55 -0400 Subject: [PATCH 1/5] Host and Deploy node updates 8.0 --- aspnetcore/blazor/host-and-deploy/index.md | 107 +++++++++++------- aspnetcore/blazor/host-and-deploy/server.md | 69 ++++++++--- ...cation-client-and-server-net31-or-later.md | 6 +- ...ocation-client-and-server-net6-or-later.md | 6 +- ...ocation-client-and-server-net7-or-later.md | 6 +- ...ocation-client-and-server-net8-or-later.md | 6 +- aspnetcore/blazor/includes/location-client.md | 4 +- aspnetcore/blazor/includes/location-server.md | 2 +- 8 files changed, 128 insertions(+), 78 deletions(-) diff --git a/aspnetcore/blazor/host-and-deploy/index.md b/aspnetcore/blazor/host-and-deploy/index.md index 2e6715cac054..3b5b74dd8014 100644 --- a/aspnetcore/blazor/host-and-deploy/index.md +++ b/aspnetcore/blazor/host-and-deploy/index.md @@ -47,21 +47,21 @@ Publish locations: :::moniker range=">= aspnetcore-8.0" -* Blazor WebAssembly: The app is published into the `/bin/Release/{TARGET FRAMEWORK}/publish/wwwroot` or `bin\Release\{TARGET FRAMEWORK}\browser-wasm\publish` folder, depending on the version of the SDK used to publish the app. To deploy the app as a static site, copy the contents of the `wwwroot` folder to the static site host. -* Blazor Server: The app is published into the `/bin/Release/{TARGET FRAMEWORK}/publish` folder. Deploy the contents of the `publish` folder to the host. +* Blazor Web App: By default, the app is published into the `/bin/Release/{TARGET FRAMEWORK}/publish` folder. Deploy the contents of the `publish` folder to the host. +* Blazor WebAssembly: By default, the app is published into the `bin\Release\net8.0\browser-wasm\publish\` folder. To deploy the app as a static site, copy the contents of the `wwwroot` folder to the static site host. :::moniker-end :::moniker range="< aspnetcore-8.0" +* Blazor Server: By default, the app is published into the `/bin/Release/{TARGET FRAMEWORK}/publish` folder. Deploy the contents of the `publish` folder to the host. * Blazor WebAssembly - * Standalone: The app is published into the `/bin/Release/{TARGET FRAMEWORK}/publish/wwwroot` or `bin\Release\{TARGET FRAMEWORK}\browser-wasm\publish` folder, depending on the version of the SDK used to publish the app. To deploy the app as a static site, copy the contents of the `wwwroot` folder to the static site host. + * Standalone: By default, the app is published into the `/bin/Release/{TARGET FRAMEWORK}/publish/wwwroot` or `bin\Release\{TARGET FRAMEWORK}\browser-wasm\publish` folder, depending on the version of the SDK used to publish the app. To deploy the app as a static site, copy the contents of the `wwwroot` folder to the static site host. * Hosted: The client Blazor WebAssembly app is published into the `/bin/Release/{TARGET FRAMEWORK}/publish/wwwroot` folder of the server app, along with any other static web assets of the client app. Deploy the contents of the `publish` folder to the host. -* Blazor Server: The app is published into the `/bin/Release/{TARGET FRAMEWORK}/publish` folder. Deploy the contents of the `publish` folder to the host. :::moniker-end -The assets in the folder are deployed to the web server. Deployment might be a manual or automated process depending on the development tools in use. +The `{TARGET FRAMEWORK}` in the preceding paths is the target framework (for example, `net8.0`). ## IIS @@ -70,7 +70,7 @@ To host a Blazor app in IIS, see the following resources: * IIS hosting * * -* : Blazor Server apps running on IIS, including IIS with Azure Virtual Machines (VMs) running Windows OS and Azure App Service. +* : Server apps running on IIS, including IIS with Azure Virtual Machines (VMs) running Windows OS and Azure App Service. * : Includes additional guidance for Blazor WebAssembly apps hosted on IIS, including static site hosting, custom `web.config` files, URL rewriting, sub-apps, compression, and Azure Storage static file hosting. * IIS sub-application hosting * Follow the guidance in the [App base path](#app-base-path) section for the Blazor app prior to publishing the app. The examples use an app base path of `/CoolApp`. @@ -117,9 +117,20 @@ The presence of a trailing slash (`/`) in a configured app base path is signific There are three sources of links that pertain to Blazor in ASP.NET Core apps: +:::moniker range=">= aspnetcore-8.0" + +* URLs in Razor components (`.razor`) are typically relative. +* URLs in scripts, such as the Blazor scripts (`blazor.*.js`), are relative to the document. + +:::moniker-end + +:::moniker range="< aspnetcore-8.0" + * URLs manually written in the `_Host.cshtml` file (Blazor Server), which if you are rendering inside different documents should always be absolute. -* URLs in Razor components (`.razor`) are typically relative, but are essentially also manually written. -* URLs in scripts, such as the Blazor scripts (`blazor.webassembly.js` and `blazor.server.js`), which are relative to the document. +* URLs in Razor components (`.razor`) are typically relative. +* URLs in scripts, such as the Blazor scripts (`blazor.*.js`), are relative to the document. + +:::moniker-end If you're rendering a Blazor app from different documents (for example, `/Admin/B/C/` and `/Admin/D/E/`), you must take the app base path into account, or the base path is different when the app renders in each document and the resources are fetched from the wrong URLs. @@ -137,12 +148,12 @@ Under the first approach, routing offers , which is the most typical approach: +Map the SignalR hub of a server-side Blazor app by passing the path to in the `Program` file: ```csharp -endpoints.MapBlazorHub("base/path"); +app.MapBlazorHub("base/path"); ``` The benefit of using is that you can map patterns, such as `"{tenant}"` and not just concrete paths. @@ -187,43 +198,25 @@ To provide configuration for the Blazor app's base path of `https://www.contoso. By configuring the app base path, a component that isn't in the root directory can construct URLs relative to the app's root path. Components at different levels of the directory structure can build links to other resources at locations throughout the app. The app base path is also used to intercept selected hyperlinks where the `href` target of the link is within the app base path URI space. The Blazor router handles the internal navigation. -In many hosting scenarios, the relative URL path to the app is the root of the app. In these default cases, the app's relative URL base path is the following: - -* Blazor WebAssembly: `/` configured as ``. -* Blazor Server: `~/` configured as ``. - -For the location of `` content in Blazor apps, see . - -> [!NOTE] -> In some hosting scenarios, such as GitHub Pages and IIS sub-apps, the app base path must be set to the server's relative URL path of the app. +:::moniker range=">= aspnetcore-8.0" -* Standalone Blazor WebAssembly (`wwwroot/index.html`): +In many hosting scenarios, the relative URL path to the app is the root of the app. In these default cases, the app's relative URL base path is `/` configured as `` in [`` content](xref:blazor/project-structure#location-of-head-and-body-content). - ```html - - ``` - - **The trailing slash is required.** +:::moniker-end :::moniker range="< aspnetcore-8.0" -* Hosted Blazor WebAssembly (**:::no-loc text="Client":::** project, `wwwroot/index.html`): - - ```html - - ``` - - **The trailing slash is required.** - - In the **:::no-loc text="Server":::** project, call ***first*** in the app's request processing pipeline (`Program.cs`) immediately after the is built (`builder.Build()`) to configure the base path for any following middleware that interacts with the request path: +In many hosting scenarios, the relative URL path to the app is the root of the app. In these default cases, the app's relative URL base path is the following in [`` content](xref:blazor/project-structure#location-of-head-and-body-content): - ```csharp - app.UsePathBase("/CoolApp"); - ``` +* Blazor Server: `~/` configured as ``. +* Blazor WebAssembly: `/` configured as ``. :::moniker-end -* In a Blazor Server app, use ***either*** of the following approaches: +> [!NOTE] +> In some hosting scenarios, such as GitHub Pages and IIS sub-apps, the app base path must be set to the server's relative URL path of the app. + +* In a server-side Blazor app, use ***either*** of the following approaches: * Option 1: Use the `` tag to set the app's base path ([location of `` content](xref:blazor/project-structure#location-of-head-and-body-content)): @@ -261,6 +254,32 @@ For the location of `` content in Blazor apps, see . For additional information on Blazor app base paths and hosting, see [`` or base-tag alternative for Blazor MVC integration (dotnet/aspnetcore #43191)](https://github.com/dotnet/aspnetcore/issues/43191#issuecomment-1212156106). +* Standalone Blazor WebAssembly (`wwwroot/index.html`): + + ```html + + ``` + + **The trailing slash is required.** + +:::moniker range="< aspnetcore-8.0" + +* Hosted Blazor WebAssembly (**:::no-loc text="Client":::** project, `wwwroot/index.html`): + + ```html + + ``` + + **The trailing slash is required.** + + In the **:::no-loc text="Server":::** project, call ***first*** in the app's request processing pipeline (`Program.cs`) immediately after the is built (`builder.Build()`) to configure the base path for any following middleware that interacts with the request path: + + ```csharp + app.UsePathBase("/CoolApp"); + ``` + +:::moniker-end + > [!NOTE] > When using (see ), [`app.UseRouting`](xref:Microsoft.AspNetCore.Builder.EndpointRoutingApplicationBuilderExtensions.UseRouting%2A) must be called after `UsePathBase` so that the Routing Middleware can observe the modified path before matching routes. Otherwise, routes are matched before the path is rewritten by `UsePathBase` as described in the [Middleware Ordering](xref:fundamentals/middleware/index#order) and [Routing](xref:fundamentals/routing) articles. @@ -284,7 +303,9 @@ Do ***not*** prefix [Navigation Manager](xref:blazor/fundamentals/routing#uri-an In typical configurations for Azure/IIS hosting, additional configuration usually isn't required. In some non-IIS hosting and reverse proxy hosting scenarios, additional Static File Middleware configuration might be required: * To serve static files correctly (for example, `app.UseStaticFiles("/CoolApp");`). -* To serve the Blazor script (`_framework/blazor.server.js` or `_framework/blazor.webassembly.js`). For more information, see . +* To serve the Blazor script (`_framework/blazor.*.js`). For more information, see . + + For a Blazor WebAssembly app with a non-root relative URL path (for example, ``), the app fails to find its resources *when run locally*. To overcome this problem during local development and testing, you can supply a *path base* argument that matches the `href` value of the `` tag at runtime. **Don't include a trailing slash.** To pass the path base argument when running the app locally, execute the `dotnet run` command from the app's directory with the `--pathbase` option: @@ -316,8 +337,12 @@ Using either `dotnet run` with the `--pathbase` option or a launch profile confi For more information on the `launchSettings.json` file, see . For additional information on Blazor app base paths and hosting, see [`` or base-tag alternative for Blazor MVC integration (dotnet/aspnetcore #43191)](https://github.com/dotnet/aspnetcore/issues/43191#issuecomment-1212156106). +:::moniker range="< aspnetcore-8.0" + ## Blazor Server `MapFallbackToPage` configuration + + In scenarios where an app requires a separate area with custom resources and Razor components: * Create a folder within the app's `Pages` folder to hold the resources. For example, an administrator section of an app is created in a new folder named `Admin` (`Pages/Admin`). @@ -342,6 +367,8 @@ In scenarios where an app requires a separate area with custom resources and Raz app.Run(); ``` +:::moniker-end + :::moniker range="< aspnetcore-8.0" ## Host multiple Blazor WebAssembly apps diff --git a/aspnetcore/blazor/host-and-deploy/server.md b/aspnetcore/blazor/host-and-deploy/server.md index deb6cbad37ec..7714cd6043c1 100644 --- a/aspnetcore/blazor/host-and-deploy/server.md +++ b/aspnetcore/blazor/host-and-deploy/server.md @@ -1,28 +1,28 @@ --- -title: Host and deploy ASP.NET Core Blazor Server +title: Host and deploy ASP.NET Core server-side Blazor apps author: guardrex -description: Learn how to host and deploy a Blazor Server app using ASP.NET Core. +description: Learn how to host and deploy server-side Blazor apps using ASP.NET Core. monikerRange: '>= aspnetcore-3.1' ms.author: riande ms.custom: mvc ms.date: 11/08/2022 uid: blazor/host-and-deploy/server --- -# Host and deploy Blazor Server +# Host and deploy server-side Blazor apps [!INCLUDE[](~/includes/not-latest-version.md)] -This article explains how to host and deploy a Blazor Server app using ASP.NET Core. +This article explains how to host and deploy server-side Blazor apps using ASP.NET Core. ## Host configuration values -[Blazor Server apps](xref:blazor/hosting-models#blazor-server) can accept [Generic Host configuration values](xref:fundamentals/host/generic-host#host-configuration). +Server-side Blazor apps can accept [Generic Host configuration values](xref:fundamentals/host/generic-host#host-configuration). ## Deployment -Using the [Blazor Server hosting model](xref:blazor/hosting-models#blazor-server), Blazor is executed on the server from within an ASP.NET Core app. UI updates, event handling, and JavaScript calls are handled over a [SignalR](xref:signalr/introduction) connection. +Using a server-side hosting model, Blazor is executed on the server from within an ASP.NET Core app. UI updates, event handling, and JavaScript calls are handled over a [SignalR](xref:signalr/introduction) connection. -A web server capable of hosting an ASP.NET Core app is required. Visual Studio includes the **Blazor Server App** project template (`blazorserver` template when using the [`dotnet new`](/dotnet/core/tools/dotnet-new) command). For more information on Blazor project templates, see . +A web server capable of hosting an ASP.NET Core app is required. Visual Studio includes a server-side app project template. For more information on Blazor project templates, see . ## Scalability @@ -31,7 +31,7 @@ When considering the scalability of a single server (scale up), the memory avail * Number of active circuits that a server can support. * UI latency on the client. -For guidance on building secure and scalable Blazor server apps, see . +For guidance on building secure and scalable server-side Blazor apps, see . Each circuit uses approximately 250 KB of memory for a minimal *Hello World*-style app. The size of a circuit depends on the app's code and the state maintenance requirements associated with each component. We recommend that you measure resource demands during development for your app and infrastructure, but the following baseline can be a starting point in planning your deployment target: If you expect your app to support 5,000 concurrent users, consider budgeting at least 1.3 GB of server memory to the app (or ~273 KB per user). @@ -59,6 +59,10 @@ Recommendations for global deployments to geographical data centers: If a deployed app frequently displays the reconnection UI due to ping timeouts caused by Internet latency, lengthen the server and client timeouts: +:::moniker-end + +:::moniker range=">= aspnetcore-8.0" + * **Server** At least double the maximum roundtrip time expected between the client and the server. Test, monitor, and revise the timeouts as needed. For the SignalR hub, set the (default: 30 seconds) and (default: 15 seconds). The following example assumes that uses the default value of 15 seconds. @@ -68,7 +72,33 @@ If a deployed app frequently displays the reconnection UI due to ping timeouts c > > In the following example, the is increased to 60 seconds, and the is increased to 30 seconds. - For a Blazor Server app in `Program.cs`: + In the server project's `Program.cs` file: + + ```csharp + builder.Services.AddRazorComponents().AddServerComponents() + .AddHubOptions(options => + { + options.ClientTimeoutInterval = TimeSpan.FromSeconds(60); + options.HandshakeTimeout = TimeSpan.FromSeconds(30); + }); + ``` + + For more information, see . + +:::moniker-end + +:::moniker range=">= aspnetcore-6.0 < aspnetcore-8.0" + +* **Server** + + At least double the maximum roundtrip time expected between the client and the server. Test, monitor, and revise the timeouts as needed. For the SignalR hub, set the (default: 30 seconds) and (default: 15 seconds). The following example assumes that uses the default value of 15 seconds. + + > [!IMPORTANT] + > The isn't directly related to the reconnection UI appearing. The Keep-Alive interval doesn't necessarily need to be changed. If the reconnection UI appearance issue is due to timeouts, the and can be increased and the Keep-Alive interval can remain the same. The important consideration is that if you change the Keep-Alive interval, make sure that the client timeout value is at least double the value of the Keep-Alive interval and that the Keep-Alive interval on the client matches the server setting. + > + > In the following example, the is increased to 60 seconds, and the is increased to 30 seconds. + + In `Program.cs`: ```csharp builder.Services.AddServerSideBlazor() @@ -81,6 +111,10 @@ If a deployed app frequently displays the reconnection UI due to ping timeouts c For more information, see . +:::moniker-end + +:::moniker range=">= aspnetcore-6.0" + * **Client** :::moniker-end @@ -94,10 +128,9 @@ If a deployed app frequently displays the reconnection UI due to ping timeouts c > > In the following example, a custom value of 60 seconds is used for the server timeout. - In `Pages/_Host.cshtml` of a Blazor Server app: + In the [startup configuration](xref:blazor/fundamentals/startup) of a server-side Blazor app after the Blazor script (`blazor.*.js`) ` @@ -190,7 +223,7 @@ For more information, see [!IMPORTANT] > When [WebSockets](https://wikipedia.org/wiki/WebSocket) are disabled, Azure App Service simulates a real-time connection using HTTP Long Polling. HTTP Long Polling is noticeably slower than running with WebSockets enabled, which doesn't use polling to simulate a client-server connection. In the event that Long Polling must be used, you may need to configure the maximum poll interval (`MaxPollIntervalInSeconds`), which defines the maximum poll interval allowed for Long Polling connections in [Azure SignalR Service](#azure-signalr-service) if the service ever falls back from WebSockets to Long Polling. If the next poll request does not come in within `MaxPollIntervalInSeconds`, Azure SignalR Service cleans up the client connection. Note that Azure SignalR Service also cleans up connections when cached waiting to write buffer size is greater than 1 MB to ensure service performance. Default value for `MaxPollIntervalInSeconds` is 5 seconds. The setting is limited to 1-300 seconds. > -> **We recommend using WebSockets for Blazor Server apps deployed to Azure App Service.** The [Azure SignalR Service](xref:signalr/scale#azure-signalr-service) uses WebSockets by default. If the app doesn't use the Azure SignalR Service, see . +> **We recommend using WebSockets for server-side Blazor apps deployed to Azure App Service.** The [Azure SignalR Service](xref:signalr/scale#azure-signalr-service) uses WebSockets by default. If the app doesn't use the Azure SignalR Service, see . > > For more information, see: > @@ -244,7 +277,7 @@ To configure an app for the Azure SignalR Service, the app must support *sticky To provision the Azure SignalR Service for an app in Visual Studio: -1. Create an Azure Apps publish profile in Visual Studio for the Blazor Server app. +1. Create an Azure Apps publish profile in Visual Studio for the app. 1. Add the **Azure SignalR Service** dependency to the profile. If the Azure subscription doesn't have a pre-existing Azure SignalR Service instance to assign to the app, select **Create a new Azure SignalR Service instance** to provision a new service instance. 1. Publish the app to Azure. @@ -254,7 +287,7 @@ Provisioning the Azure SignalR Service in Visual Studio automatically [enables * ### Scalability on Azure Container Apps -Scaling Blazor Server apps on Azure Container Apps requires specific considerations in addition to using the [Azure SignalR Service](#azure-signalr-service). Due to the way request routing is handled, the ASP.NET Core data protection service must be configured to persist keys in a centralized location that all container instances can access. The keys can be stored in Azure Blob Storage and protected with Azure Key Vault. The data protection service uses the keys to deserialize Razor components. +Scaling server-side Blazor apps on Azure Container Apps requires specific considerations in addition to using the [Azure SignalR Service](#azure-signalr-service). Due to the way request routing is handled, the ASP.NET Core data protection service must be configured to persist keys in a centralized location that all container instances can access. The keys can be stored in Azure Blob Storage and protected with Azure Key Vault. The data protection service uses the keys to deserialize Razor components. > [!NOTE] > For a deeper exploration of this scenario and scaling container apps, see . The tutorial explains how to create and integrate the services required to host apps on Azure Container Apps. Basic steps are also provided in this section. @@ -280,7 +313,7 @@ Scaling Blazor Server apps on Azure Container Apps requires specific considerati 1. Select **Service Connector** from the left navigation. 1. Select **+ Create** from the top navigation. 1. In the **Create connection** flyout menu, enter the following values: - * **Container**: Select the container app you created to host your Blazor Server app. + * **Container**: Select the container app you created to host your app. * **Service type**: Select **Blob Storage**. * **Subscription**: Select the subscription that owns the container app. * **Connection name**: Enter a name of `scalablerazorstorage`. diff --git a/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md index a44544a307ea..94203b31abae 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md @@ -3,11 +3,9 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s :::moniker range=">= aspnetcore-8.0" * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders for components with related functionality that suit your taste. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). - -Routable components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the `Components` folder. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. :::moniker-end diff --git a/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md index 355672ddd5d8..ae785e620f6e 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md @@ -3,11 +3,9 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s :::moniker range=">= aspnetcore-8.0" * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders for components with related functionality that suit your taste. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). - -Routable components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the `Components` folder. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. :::moniker-end diff --git a/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md index b354fc6087d2..cd3e309c9679 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md @@ -3,11 +3,9 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s :::moniker range=">= aspnetcore-8.0" * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders for components with related functionality that suit your taste. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). - -Routable components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the `Components` folder. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. :::moniker-end diff --git a/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md index 76d4b9046e6c..f0daa1aa6c93 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md @@ -1,8 +1,6 @@ Throughout this article, the terms **client**/**client-side** and **server**/**server-side** are used to distinguish locations where app code executes: * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders for components with related functionality that suit your taste. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). - -Routable components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the `Components` folder. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. diff --git a/aspnetcore/blazor/includes/location-client.md b/aspnetcore/blazor/includes/location-client.md index b53eebf8d379..fb9ec8565a00 100644 --- a/aspnetcore/blazor/includes/location-client.md +++ b/aspnetcore/blazor/includes/location-client.md @@ -2,11 +2,9 @@ This guidance applies to: :::moniker range=">= aspnetcore-8.0" -* Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. +* Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders for components with related functionality that suit your taste. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -Routable components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the `Components` folder. - :::moniker-end :::moniker range="< aspnetcore-8.0" diff --git a/aspnetcore/blazor/includes/location-server.md b/aspnetcore/blazor/includes/location-server.md index 603c40e4cc74..33fc14ab16b1 100644 --- a/aspnetcore/blazor/includes/location-server.md +++ b/aspnetcore/blazor/includes/location-server.md @@ -2,7 +2,7 @@ This guidance applies to interactive components with server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). -Routable components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the `Components` folder. +Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. :::moniker-end From 347d08408b23041c5e0fb8194e3e162e2a0a1c83 Mon Sep 17 00:00:00 2001 From: guardrex <1622880+guardrex@users.noreply.github.com> Date: Mon, 18 Sep 2023 15:45:54 -0400 Subject: [PATCH 2/5] Updates --- .../includes/location-client-and-server-net31-or-later.md | 4 ++-- .../includes/location-client-and-server-net6-or-later.md | 4 ++-- .../includes/location-client-and-server-net7-or-later.md | 4 ++-- .../includes/location-client-and-server-net8-or-later.md | 4 ++-- aspnetcore/blazor/includes/location-client.md | 2 +- aspnetcore/blazor/includes/location-server.md | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md index 94203b31abae..c1ed8ac15dd5 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md @@ -3,9 +3,9 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s :::moniker range=">= aspnetcore-8.0" * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders for components with related functionality that suit your taste. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. :::moniker-end diff --git a/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md index ae785e620f6e..6e079d406384 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md @@ -3,9 +3,9 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s :::moniker range=">= aspnetcore-8.0" * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders for components with related functionality that suit your taste. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. :::moniker-end diff --git a/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md index cd3e309c9679..f76d3fa33265 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md @@ -3,9 +3,9 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s :::moniker range=">= aspnetcore-8.0" * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders for components with related functionality that suit your taste. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. :::moniker-end diff --git a/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md index f0daa1aa6c93..366585656cf4 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md @@ -1,6 +1,6 @@ Throughout this article, the terms **client**/**client-side** and **server**/**server-side** are used to distinguish locations where app code executes: * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders for components with related functionality that suit your taste. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. diff --git a/aspnetcore/blazor/includes/location-client.md b/aspnetcore/blazor/includes/location-client.md index fb9ec8565a00..6c936a7e739e 100644 --- a/aspnetcore/blazor/includes/location-client.md +++ b/aspnetcore/blazor/includes/location-client.md @@ -2,7 +2,7 @@ This guidance applies to: :::moniker range=">= aspnetcore-8.0" -* Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders for components with related functionality that suit your taste. +* Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. :::moniker-end diff --git a/aspnetcore/blazor/includes/location-server.md b/aspnetcore/blazor/includes/location-server.md index 33fc14ab16b1..61109173e887 100644 --- a/aspnetcore/blazor/includes/location-server.md +++ b/aspnetcore/blazor/includes/location-server.md @@ -2,7 +2,7 @@ This guidance applies to interactive components with server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). -Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. +Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. :::moniker-end From 70da8b475cd759558dd76d874621ffb130d7963f Mon Sep 17 00:00:00 2001 From: guardrex <1622880+guardrex@users.noreply.github.com> Date: Mon, 18 Sep 2023 15:49:36 -0400 Subject: [PATCH 3/5] Updates --- .../includes/location-client-and-server-net31-or-later.md | 2 +- .../blazor/includes/location-client-and-server-net6-or-later.md | 2 +- .../blazor/includes/location-client-and-server-net7-or-later.md | 2 +- .../blazor/includes/location-client-and-server-net8-or-later.md | 2 +- aspnetcore/blazor/includes/location-client.md | 2 +- aspnetcore/blazor/project-structure.md | 2 +- aspnetcore/blazor/tooling.md | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md index c1ed8ac15dd5..9d8409c4854d 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md @@ -3,7 +3,7 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s :::moniker range=">= aspnetcore-8.0" * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. Routable WebAssembly and Auto render mode components with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. * **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. diff --git a/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md index 6e079d406384..050fbb8c3cf1 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md @@ -3,7 +3,7 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s :::moniker range=">= aspnetcore-8.0" * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. Routable WebAssembly and Auto render mode components with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. * **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. diff --git a/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md index f76d3fa33265..2150c46873aa 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md @@ -3,7 +3,7 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s :::moniker range=">= aspnetcore-8.0" * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. Routable WebAssembly and Auto render mode components with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. * **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. diff --git a/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md index 366585656cf4..8612f34da5ff 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md @@ -1,6 +1,6 @@ Throughout this article, the terms **client**/**client-side** and **server**/**server-side** are used to distinguish locations where app code executes: * **Client**/**client-side** - * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. + * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. Routable WebAssembly and Auto render mode components with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. * **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. diff --git a/aspnetcore/blazor/includes/location-client.md b/aspnetcore/blazor/includes/location-client.md index 6c936a7e739e..bde4655a38d8 100644 --- a/aspnetcore/blazor/includes/location-client.md +++ b/aspnetcore/blazor/includes/location-client.md @@ -2,7 +2,7 @@ This guidance applies to: :::moniker range=">= aspnetcore-8.0" -* Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. WebAssembly or Auto render mode components that are routable with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. +* Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. Routable WebAssembly and Auto render mode components with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. :::moniker-end diff --git a/aspnetcore/blazor/project-structure.md b/aspnetcore/blazor/project-structure.md index 62cc434d9020..93c1557a8163 100644 --- a/aspnetcore/blazor/project-structure.md +++ b/aspnetcore/blazor/project-structure.md @@ -24,7 +24,7 @@ The Blazor Web App project template provides a single starting point for using R If both the WebAssembly and Server render modes are selected on app creation, the project template uses the Auto render mode. The Auto render mode initially uses the Server mode while the .NET app bundle and runtime are download to the browser. After the .NET WebAssembly runtime is activated, Auto switches to the WebAssembly render mode. -By default, the Blazor Web App template enables both static and interactive server rendering using a single project. If you also enable the WebAssembly render mode, the project includes an additional client project (`.Client`) for your WebAssembly-based components. The built output from the client project is downloaded to the browser and executed on the client. Any components using the WebAssembly or Auto render modes must be built from the client project. +By default, the Blazor Web App template enables both static and interactive server rendering using a single project. If you also enable the WebAssembly render mode, the project includes an additional client project (`.Client`) for your WebAssembly-based components. The built output from the client project is downloaded to the browser and executed on the client. Any components using the WebAssembly and Auto render modes must be built from the client project. For more information, see . diff --git a/aspnetcore/blazor/tooling.md b/aspnetcore/blazor/tooling.md index 3a0b0d0b9417..c1257d8f616f 100644 --- a/aspnetcore/blazor/tooling.md +++ b/aspnetcore/blazor/tooling.md @@ -68,7 +68,7 @@ To create a Blazor app on Windows, use the following guidance: If both the WebAssembly and Server render modes are selected, the template uses the Auto render mode. The Auto render mode initially uses the Server mode while the .NET app bundle and runtime are download to the browser. After the .NET WebAssembly runtime is activated, Auto switches to the WebAssembly render mode. - By default, the Blazor Web App template enables both static and interactive server rendering using a single project. If you also enable the WebAssembly render mode, the project includes an additional client project (`.Client`) for your WebAssembly-based components. The built output from the client project is downloaded to the browser and executed on the client. Any components using the WebAssembly or Auto render modes must be built from the client project. + By default, the Blazor Web App template enables both static and interactive server rendering using a single project. If you also enable the WebAssembly render mode, the project includes an additional client project (`.Client`) for your WebAssembly-based components. The built output from the client project is downloaded to the browser and executed on the client. Any components using the WebAssembly and Auto render modes must be built from the client project. For more information, see . From ebbc4035d9e07ebcaa087bf0d70498bac7392425 Mon Sep 17 00:00:00 2001 From: guardrex <1622880+guardrex@users.noreply.github.com> Date: Mon, 18 Sep 2023 15:52:23 -0400 Subject: [PATCH 4/5] Updates --- .../includes/location-client-and-server-net31-or-later.md | 2 +- .../blazor/includes/location-client-and-server-net6-or-later.md | 2 +- .../blazor/includes/location-client-and-server-net7-or-later.md | 2 +- .../blazor/includes/location-client-and-server-net8-or-later.md | 2 +- aspnetcore/blazor/includes/location-server.md | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md index 9d8409c4854d..97b0cfb99c49 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net31-or-later.md @@ -5,7 +5,7 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s * **Client**/**client-side** * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. Routable WebAssembly and Auto render mode components with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Only routable Server render mode components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. :::moniker-end diff --git a/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md index 050fbb8c3cf1..c225c11dbf73 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net6-or-later.md @@ -5,7 +5,7 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s * **Client**/**client-side** * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. Routable WebAssembly and Auto render mode components with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Only routable Server render mode components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. :::moniker-end diff --git a/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md index 2150c46873aa..837e377a2b64 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net7-or-later.md @@ -5,7 +5,7 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s * **Client**/**client-side** * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. Routable WebAssembly and Auto render mode components with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Only routable Server render mode components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. :::moniker-end diff --git a/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md b/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md index 8612f34da5ff..f64da3a270fb 100644 --- a/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md +++ b/aspnetcore/blazor/includes/location-client-and-server-net8-or-later.md @@ -3,4 +3,4 @@ Throughout this article, the terms **client**/**client-side** and **server**/**s * **Client**/**client-side** * Interactive client rendering of a Blazor Web App. The `Program` file is `Program.cs` of the client project (`.Client`). Blazor script start configuration is found in the `App` component (`Components/App.razor`) of the server project. Routable WebAssembly and Auto render mode components with an `@page` directive are placed in the client project's `Pages` folder. Place non-routable shared components at the root of the `.Client` project or in custom folders based on component functionality. * A Blazor WebAssembly app. The `Program` file is `Program.cs`. Blazor script start configuration is found in the `wwwroot/index.html` file. -* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. +* **Server**/**server-side**: Interactive server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). Only routable Server render mode components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. diff --git a/aspnetcore/blazor/includes/location-server.md b/aspnetcore/blazor/includes/location-server.md index 61109173e887..44742a5548b0 100644 --- a/aspnetcore/blazor/includes/location-server.md +++ b/aspnetcore/blazor/includes/location-server.md @@ -2,7 +2,7 @@ This guidance applies to interactive components with server rendering of a Blazor Web App. The `Program` file is `Program.cs` of the server project. Blazor script start configuration is found in the `App` component (`Components/App.razor`). -Exclusively server render mode components that are routable with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. +Only routable Server render mode components with an `@page` directive are placed in the `Components/Pages` folder. Non-routable shared components are placed in the server project's `Components` folder. Create custom folders based on component functionality as needed. :::moniker-end From 8f755f37c36e478bb6728ff11a94bdb9ab216dd1 Mon Sep 17 00:00:00 2001 From: guardrex <1622880+guardrex@users.noreply.github.com> Date: Mon, 18 Sep 2023 15:54:00 -0400 Subject: [PATCH 5/5] Updates --- aspnetcore/blazor/project-structure.md | 2 +- aspnetcore/blazor/tooling.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/aspnetcore/blazor/project-structure.md b/aspnetcore/blazor/project-structure.md index 93c1557a8163..62cc434d9020 100644 --- a/aspnetcore/blazor/project-structure.md +++ b/aspnetcore/blazor/project-structure.md @@ -24,7 +24,7 @@ The Blazor Web App project template provides a single starting point for using R If both the WebAssembly and Server render modes are selected on app creation, the project template uses the Auto render mode. The Auto render mode initially uses the Server mode while the .NET app bundle and runtime are download to the browser. After the .NET WebAssembly runtime is activated, Auto switches to the WebAssembly render mode. -By default, the Blazor Web App template enables both static and interactive server rendering using a single project. If you also enable the WebAssembly render mode, the project includes an additional client project (`.Client`) for your WebAssembly-based components. The built output from the client project is downloaded to the browser and executed on the client. Any components using the WebAssembly and Auto render modes must be built from the client project. +By default, the Blazor Web App template enables both static and interactive server rendering using a single project. If you also enable the WebAssembly render mode, the project includes an additional client project (`.Client`) for your WebAssembly-based components. The built output from the client project is downloaded to the browser and executed on the client. Any components using the WebAssembly or Auto render modes must be built from the client project. For more information, see . diff --git a/aspnetcore/blazor/tooling.md b/aspnetcore/blazor/tooling.md index c1257d8f616f..3a0b0d0b9417 100644 --- a/aspnetcore/blazor/tooling.md +++ b/aspnetcore/blazor/tooling.md @@ -68,7 +68,7 @@ To create a Blazor app on Windows, use the following guidance: If both the WebAssembly and Server render modes are selected, the template uses the Auto render mode. The Auto render mode initially uses the Server mode while the .NET app bundle and runtime are download to the browser. After the .NET WebAssembly runtime is activated, Auto switches to the WebAssembly render mode. - By default, the Blazor Web App template enables both static and interactive server rendering using a single project. If you also enable the WebAssembly render mode, the project includes an additional client project (`.Client`) for your WebAssembly-based components. The built output from the client project is downloaded to the browser and executed on the client. Any components using the WebAssembly and Auto render modes must be built from the client project. + By default, the Blazor Web App template enables both static and interactive server rendering using a single project. If you also enable the WebAssembly render mode, the project includes an additional client project (`.Client`) for your WebAssembly-based components. The built output from the client project is downloaded to the browser and executed on the client. Any components using the WebAssembly or Auto render modes must be built from the client project. For more information, see .