.NET Core 2.0 Preview2 发布汇总
2017-07-03 14:57
525 查看
前言
关于 ASP.NET Core 2.0 的新功能可以查看我的这篇博客。 这篇文章是 Priview2中的一些改进。
.NET Core 2.0 - Preview2
- Azure 的改进
- Docker 镜像转移到了 Debian Stretch
- 修复并支持 macOS High Sierra
- 质量和性能的改进
dotnet restore
将在 dotnet run,publish,build 的时候被隐式调用- .NET Standard 库可以引用 .NET Framework库了
- .NET Standard NuGet 包 nuspec 不再需要添加对于
NETStandard.Library
依赖关系了
ASP.NET Core 2.0 - Preview2
-
更新了 Visual Studio 的模板,多了SPA项目的模板。 包括(Angular, React.js, React.js and Redux)等。
-
添加了在 Visual Studio 2017 中新建 ASP.NET Core 项目使用 .NET Framework框架的模板。
- Kestrel 添加了一些配置选项,包括(MaxConcurrentConnections,MaxRequestBodySize,RequestBodyMinimumDataRate)等。
- Razor 支持 C# 7.1。 此项配置可以在csproj中指定
<LangVersion>latest</ LangVersion>
开启。 - 对于MVC Action中FileStreamResult,FileContentResult 的Http头增加了支持的范围。 现在可以添加 ETag, LastUpdate等。
- 新增了两个关于Razor Page的过滤器(IPageFilter,IAsyncPageFilter)。
-
关于 Priview 1中的 Identity 相关的服务还有配置HTTPS的被割掉了,他们还需要时间进行打磨,等待以后发布。
Entity Framework Core 2.0 - Preview2
- 新的 NuGet 包以及工具包(Microsoft.EntityFrameworkCore.Tools.DotNet)
- FromSql和ExecuteSqlCommand中的字符串插值,他们生成的SQL将会自动参数化。
var city = "London"; var contactTitle = "Sales Representative"; using (var context = CreateContext()) { context.Customers .FromSql($@" SELECT * FROM Customers WHERE City = {city} AND ContactTitle = {contactTitle}") .ToArray(); }
生成的SQL:
@p0='London' (Size = 4000) @p1='Sales Representative' (Size = 4000) SELECT * FROM Customers WHERE City = @p0 AND ContactTitle = @p1
- 实体类型自动分割表(完善Priview1中的功能),下面将只会创建一个表。
modelBuilder.Entity<Order>().OwnsOne( p => p.OrderDetails, cb => { cb.OwnsOne(c => c.BillingAddress); cb.OwnsOne(c => c.ShippingAddress); }); public class Order { public int Id { get; set; } public OrderDetails OrderDetails { get; set; } } public class OrderDetails { public Address BillingAddress { get; set; } public Address ShippingAddress { get; set; } } public class Address { public string Street { get; set; } public string City { get; set; } }
- 数据库函数映射,你可以在代码中使用数据库中定义的函数了,注意返回值只能是单个的(scalar)。
public class BloggingContext : DbContext { [DbFunction] // 添加这个标记,静态方法 public static int PostReadCount(int blogId) { throw new Exception(); } }
将会调用数据库中定义的PostReadCount函数,函数必须自己手动创建,EF不会自动生成。
var query = from p in context.Posts where BloggingContext.PostReadCount(p.Id) > 5 select p;
- 其他的改进(兼容性,过时api等)
相关文章推荐
- .NET Core 2.0 Preview2 发布汇总
- .NET Core 2.0 Preview2 发布汇总
- .NET Core 2.0 Preview2 发布汇总
- .NET Core 2.0 正式发布信息汇总
- .NET Core 2.0 正式发布信息汇总
- .NET Core 2.0 正式发布信息汇总
- NET CORE 2.0发布在IIS上提示502.5错误
- .NET Core 2.0版本预计于2017年春季发布
- 将本地web项目发布到ubuntu上并运行 第一个本地的.net core2.0项目
- 微软Build 2017首日主角AI 同时发布.NET Core 2.0 Preview 1
- .NET Core 2.0版本预计于2017年春季发布
- .NET Core 2.0 Preview 1发布下载和文档
- .NET Core 1.1 发布 文档下载资源汇总
- .Net Core 2.0 + CentOS 7 + Nginx(编译发布)
- .NET Core 2.0 正式发布
- .NET Core 2.0发布了
- 重磅 .NET Core 2.0正式版终于发布了
- CentOS 7下发布.net core 2.0 过程
- .net Core 2.0应用程序发布到IIS上注意事项
- net Core 2.0应用程序发布到IIS