You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: aspnetcore/blazor/call-web-api.md
+18-1Lines changed: 18 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -358,7 +358,24 @@ The solution includes a demonstration of obtaining weather data securely via an
358
358
359
359
## Disposal of `HttpRequestMessage`, `HttpResponseMessage`, and `HttpClient`
360
360
361
-
An<xref:System.Net.Http.HttpRequestMessage>withoutabodydoesn't require explicit disposal with a [`using` declaration (C# 8 or later)](/dotnet/csharp/language-reference/proposals/csharp-8.0/using) or a [`using` block (all C# releases)](/dotnet/csharp/language-reference/keywords/using), but we recommend disposing with every use for the following reasons:
361
+
An<xref:System.Net.Http.HttpRequestMessage>withoutabodydoesn't require explicit disposal. However, you can dispose of it with either of the following patterns:
Copy file name to clipboardExpand all lines: aspnetcore/blazor/components/quickgrid.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -127,7 +127,7 @@ Set the `QuickGrid` component's <xref:Microsoft.AspNetCore.Components.QuickGrid.
127
127
<QuickGrid Items="..." Pagination="pagination">
128
128
```
129
129
130
-
<!-- UPDATE 10.0 Tracked by https://github.com/dotnet/aspnetcore/issues/57289
130
+
<!-- UPDATE 11.0 Tracked by https://github.com/dotnet/aspnetcore/issues/57289
131
131
for multiple paginator components problem. -->
132
132
133
133
To provide a UI for pagination, add a [`Paginator` component](xref:Microsoft.AspNetCore.Components.QuickGrid.Paginator) above or below the `QuickGrid` component. Set the <xref:Microsoft.AspNetCore.Components.QuickGrid.Paginator.State%2A?displayProperty=nameWithType> to `pagination`:
A loading progress indicator isn't present in an app created from the Blazor Web App project template. A new loading progress indicator feature is planned for a future release of .NET. In the meantime, an app can adopt custom code to create a loading progress indicator. For more information, see <xref:blazor/fundamentals/startup#client-side-loading-indicators>.
352
+
An app can adopt custom code to create a loading progress indicator. For more information, see <xref:blazor/fundamentals/startup#client-side-loading-indicators>.
A component that receives an image file can call the <xref:Microsoft.AspNetCore.Components.Forms.BrowserFileExtensions.RequestImageFileAsync%2A?displayProperty=nameWithType> convenience method on the file to resize the image data within the browser's JavaScript runtime before the image is streamed into the app. Use cases for calling <xref:Microsoft.AspNetCore.Components.Forms.BrowserFileExtensions.RequestImageFileAsync%2A> are most appropriate for Blazor WebAssembly apps.
100
100
101
-
:::moniker range="< aspnetcore-9.0"
102
-
103
-
<!-- UPDATE 10.0 Remove this section. Leave the coverage in the
104
-
Troubleshoot section. -->
105
-
106
-
## Autofac Inversion of Control (IoC) container users
107
-
108
-
If you're using the [Autofac Inversion of Control (IoC) container](https://autofac.org/) instead of the built-in ASP.NET Core dependency injection container, set <xref:Microsoft.AspNetCore.SignalR.HubOptions.DisableImplicitFromServicesParameters%2A> to `true` in the [server-side circuit handler hub options](xref:blazor/fundamentals/signalr#server-side-circuit-handler-options). For more information, see [FileUpload: Did not receive any data in the allotted time (`dotnet/aspnetcore`#38842)](https://github.com/dotnet/aspnetcore/issues/38842#issuecomment-1342540950).
109
-
110
-
:::moniker-end
111
-
112
101
## File size read and upload limits
113
102
114
103
:::moniker range=">= aspnetcore-9.0"
@@ -293,7 +282,7 @@ public class UploadResult
293
282
294
283
A security best practice for production apps is to avoid sending error messages to clients that might reveal sensitive information about an app, server, or network. Providing detailed error messages can aid a malicious user in devising attacks on an app, server, or network. The example code in this section only sends back an error code number (`int`) for display by the component client-side if a server-side error occurs. If a user requires assistance with a file upload, they provide the error code to support personnel for support ticket resolution without ever knowing the exact cause of the error.
295
284
296
-
<!-- UPDATE 10.0 HOLD moniker range="< aspnetcore-10.0"
285
+
<!-- UPDATE 11.0 HOLD moniker range="< aspnetcore-11.0"
Copy file name to clipboardExpand all lines: aspnetcore/blazor/forms/index.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -448,9 +448,9 @@ jQuery validation isn't supported in Razor components. We recommend any of the f
448
448
* Use native HTML validation attributes (see [Client-side form validation](https://developer.mozilla.org/docs/Learn/Forms/Form_validation)).
449
449
* Adopt a third-party validation JavaScript library.
450
450
451
-
<!-- UPDATE 10.0 - Remove if the feature is realized. -->
451
+
<!-- UPDATE 11.0 - Remove if the feature is realized or dropped. -->
452
452
453
-
For statically-rendered forms on the server, a new mechanism for client-side validation is under consideration for .NET 10 in late 2025. For more information, see [Create server rendered forms with client validation using Blazor without a circuit (`dotnet/aspnetcore`#51040)](https://github.com/dotnet/aspnetcore/issues/51040).
453
+
For statically-rendered forms on the server, a new mechanism for client-side validation is under consideration. For more information, see [Create server rendered forms with client validation using Blazor without a circuit (`dotnet/aspnetcore`#51040)](https://github.com/dotnet/aspnetcore/issues/51040).
## Utility base component classes to manage a DI scope
357
357
358
-
<!-- UPDATE 10.0 - PU design is under consideration for .NET 10. -->
359
-
360
358
In non-Blazor ASP.NET Core apps, scoped and transient services are typically scoped to the current request. After the request completes, scoped and transient services are disposed by the DI system.
361
359
362
360
In interactive server-side Blazor apps, the DI scope lasts for the duration of the circuit (the SignalR connection between the client and server), which can result in scoped and disposable transient services living much longer than the lifetime of a single component. Therefore, don't directly inject a scoped service into a component if you intend the service lifetime to match the lifetime of the component. Transient services injected into a component that don't implement <xref:System.IDisposable> are garbage collected when the component is disposed. However, injected transient services *that implement <xref:System.IDisposable>* are maintained by the DI container for the lifetime of the circuit, which prevents service garbage collection when the component is disposed and results in a memory leak. An alternative approach for scoped services based on the <xref:Microsoft.AspNetCore.Components.OwningComponentBase> type is described later in this section, and disposable transient services shouldn't be used at all. For more information, see [Design for solving transient disposables on Blazor Server (`dotnet/aspnetcore` #26676)](https://github.com/dotnet/aspnetcore/issues/26676).
Configuring the hub used by <xref:Microsoft.AspNetCore.Builder.ServerRazorComponentsEndpointConventionBuilderExtensions.AddInteractiveServerRenderMode%2A> with <xref:Microsoft.AspNetCore.Builder.ComponentEndpointRouteBuilderExtensions.MapBlazorHub%2A> fails with an <xref:System.Reflection.AmbiguousMatchException>:
0 commit comments