博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASP.NET Core 和 Blazor 更新
阅读量:3528 次
发布时间:2019-05-20

本文共 2957 字,大约阅读时间需要 9 分钟。

 现在已经可用,它包含了对 ASP.NET Core 和 Blazor 的一系列新更新。更新内容如下:

项目模板更新

  • 清理 Visual Studio 中的顶级模板

Visual Studio 中“Create a new project”对话框中的顶级 ASP.NET Core 项目模板不再出现在“Create a new ASP.NET Core web application”对话框中。下面的 ASP.NET Core 模板现在只出现在“Create a new project”对话框中:Razor Class Library、Blazor App、Worker Service 和 gRPC Service

  • Angular 模板更新为 Angular 8
  • BLazor 模板重命名和简化

更新了 Blazor 模板,以使用一致的命名样式,并简化模板的数量:

“Blazor(服务器端)”模板现在被称为“Blazor Server App”,使用 blaszorserver 从命令行创建一个 Blazor Server 应用程序。“Blazor”模板现在被称为“Blazor WebAssembly App”,使用 blaszorwasm 从命令行创建一个 Blazor WebAssembly 应用程序。若要创建 ASP.NET Core 承载的 Blazor WebAssembly 应用程序,请在 Visual Studio 中选择“ASP.NET Core hosted”选项。

 

dotnet new blazorwasm --hosted
  •  Razor Class Library  模板取代 Blazor Class Library 模板

 

新的 Razor 类库项目以 .NET 标准为目标,因此可以同时从 Blazor Server 和 Blazor WebAssembly 应用程序中使用它们。若要创建新的 Razor 类库模板,该模板针对 .NET Core 并支持页面和视图,请在 Visual Studio 中选择 Support pages and views 选项,或在命令行上传递 --support-pages-and-views 选项。

 

dotnet new razorclasslib --support-pages-and-views

 

区分大小写的组件绑定

 .razor 文件中的组件现在是区分大小写的。

改进 BLazor 服务器应用程序的重连接逻辑

Blazor Server 应用程序需要一个与服务器的实时连接才能正常工作。如果连接或与其关联的服务器端状态丢失,则客户端将无法工作。Blazor Server 应用程序将尝试在出现断续连接丢失时重新连接到服务器,此逻辑在此版本中变得更加健壮。如果在重新建立网络连接之前重新连接尝试失败,那么用户仍然可以通过单击提供的“重试”按钮尝试手动重试连接。

 

更新 NavLink 组件以处理其他属性

以前,NavLink 对 href 和 class 属性有特定的支持,但现在可以指定任何其他属性。例如:

My page
My page

 

@ref 支持字段的自动生成

当使用 @ref 时,Razor 编译器将自动为元素和组件引用生成一个后备字段。

@code { void OnClicked() => Console.WriteLine($"I have a {myButton} and myCounter.IncrementAmount={myCounter.IncrementAmount}");}

 

对 @attribute 的 Razor Pages 支持

@page@attribute [Microsoft.AspNetCore.Authorization.Authorize]

Authorized users only!

Hello @User.Identity.Name. You are authorized!

 

非 HTTP 服务器的新网络原语

作为分离 Kestrel 组件的工作的一部分,该版引入了新的网络原语,允许添加对非 HTTP 协议的支持。

可以通过调用 IConnectionListenerFactory 上的 Bind 来绑定到端点(System.Net.EndPoint)。这将返回一个 IConnectionListener,它可以用于接受新的连接。调用 AcceptAsync 将返回一个 ConnectionContext,其中包含连接的详细信息。ConnectionContext 类似于 HttpContext,只不过它代表一个连接,而不是 HTTP 请求和响应。

支持 Kestrel 套接字传输的 Unix 域套接字

此版本更新了 Kestrel 中的默认套接字传输,以添加对 Unix 域套接字的支持(在 Linux、MacOS 和 Windows 10、1803 及更高版本上)。要绑定到 Unix 套接字,可以在 KestrelServerOptions 上调用 ListenUnixSocket( ) 方法。

public static IHostBuilder CreateHostBuilder(string[] args) =>    Host.CreateDefaultBuilder(args)        .ConfigureWebHostDefaults(webBuilder =>        {            webBuilder                .ConfigureKestrel(o =>                {                    o.ListenUnixSocket("/var/listen.sock");                })                .UseStartup
(); });

 

GRPC 支持 CallCredentials

此版增加了对 CallCredware 的支持,允许与现有的库(如 Grpc.Auth)之间的互操作性,这些库依赖 CallCredware。

Visual Studio 中的 Service Reference 工具

在 Visual Studio 中添加了支持,使管理对其他协议缓冲区文档和 OpenAPI 文档的引用变得更容易。

 

GRPC 的诊断改进

GRPC 客户端和服务器使用  对入站/出站请求进行注释,其中包含有关当前 RPC 操作的信息。

新引入的 Grpc.AspNetCore.Server 和 Grpc.Net.Client 提供程序现在发出以下事件计数器:

total-calls

current-calls

calls-failed

calls-deadline-exceeded

messages-sent

messages-received

calls-unimplemented

详情请见发布说明:

转载地址:http://jxzhj.baihongyu.com/

你可能感兴趣的文章
深入浅出MyBatis:MyBatis解析和运行原理
查看>>
Mybatis与Ibatis
查看>>
字节码文件(Class文件)
查看>>
java中的IO流(一)----概述
查看>>
StringBuilder
查看>>
集合,Collection
查看>>
泛型详解
查看>>
泛型实现斗地主
查看>>
List集合
查看>>
ArrayList集合,LinkedList集合,Vector集合
查看>>
HashSet集合
查看>>
并发与并行,线程与进程
查看>>
方法引用,通过对象名引用成员变量
查看>>
常用工具类 Math:数学计算 Random:生成伪随机数 SecureRandom:生成安全的随机数 2020-2-13
查看>>
Java的异常Exception 2020-2-13
查看>>
Java标准库定义的常用异常,自定义异常 2020-2-15
查看>>
Java问题百度/Google记录 2020-2-16
查看>>
【PADS9.5】9,对比ECO核心板,Router移动元件后布线消失,Router找不到自动布线策略文件丢失或损坏
查看>>
【STM32+w5500汇总】23,HTTP_Client 连接到ONENET上传了一段数据之后会断开,数据上传格式的设置
查看>>
【STM32+W5500+MQTT】24,所有功能都可以通过API函数的调用来实现;HTTP接入ONENET,API开发手册和打包函数,串口软件HTTP连接服务器上传数据,2018年12月28日
查看>>