.NET Core 2.0 Preview2的详细介绍
前言
关于 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 CustomersWHERE City = @p0 AND ContactTitle = @p1
实体类型自动分割表(完善Priview1中的功能),下面将只会创建一个表。
modelBuilder.EntityOrder>
().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的详细介绍的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: .NET Core 2.0 Preview2的详细介绍
本文地址: https://pptw.com/jishu/593050.html
