.NET Core开发实战

363 阅读2分钟

在 ASP.NET Core 3.0 的 Blazor 中,使用 HTML 帮助程序 (Html.RenderComponentAsync) 将组件呈现到页面和视图中。 在 ASP.NET Core 3.1 中,使用新的组件标记帮助程序从页面或视图呈现组件: CSHTMLdownload:.NET Core开发实战

复制 HTML 帮助程序在 ASP.NET Core 3.1 仍受支持,但建议使用组件标记帮助程序。 Blazor Server 应用现可在初始呈现期间将参数传递给顶级组件。 之前,你只能将参数传递给具有 RenderMode.Static 的顶级组件。 在此版本中,RenderMode.Server 和 RenderMode.ServerPrerendered 均受支持。 任何指定的参数值均序列化为 JSON,并包含在初始响应中。 例如,通过增量 (IncrementAmount) 预呈现一个 Counter 组件: CSHTML

复制 有关详细信息,请参阅将组件集成到 Razor Pages 和 MVC 应用。 HTTP.sys 中对共享队列的支持 HTTP.sys 支持创建匿名请求队列。 在 ASP.NET Core 3.1 中,我们添加了创建 HTTP.sys 请求队列或附加到现有 HTTP.sys 请求队列的功能。 通过创建名为 HTTP.sys 的请求队列或附加到现有 HTTP.sys 请求队列,可实现拥有该队列的 HTTP.sys 控制器进程独立于侦听器进程这一场景。 利用这种独立性,可在侦听器进程重启期间保留现有的连接和排队的请求: C#

复制 public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .ConfigureWebHostDefaults(webBuilder => { // ... webBuilder.UseHttpSys(options => { options.RequestQueueName = "MyExistingQueue"; options.RequestQueueMode = RequestQueueMode.CreateOrAttach; }); }); SameSite cookie 的中断性变更 SameSite cookie 的行为已更改,可反映出即将发生的浏览器更改。 这可能会影响 AzureAd、OpenIdConnect 或 WsFederation 等身份验证场景。 有关详细信息,请参阅 使用 cookie ASP.NET Core 中的 SameSite。 在 Blazor 应用中阻止事件的默认操作 使用 @on{EVENT}:preventDefault 指令属性可阻止事件的默认操作。 在下例中,阻止在文本框中显示键字符的默认操作: razor

复制 <input value="@_count" @onkeypress="KeyHandler" @onkeypress:preventDefault /> 有关详细信息,请参阅阻止默认操作。 在 Blazor 应用中停止事件传播 使用 @on{EVENT}:stopPropagation 指令属性来停止事件传播。 在下例中,选中复选框可阻止子

中的单击事件传播到父
: razor

复制 <input @bind="_stopPropagation" type="checkbox" />

...

@code { private bool _stopPropagation = false; } 有关详细信息,请参阅停止事件传播。