.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 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等)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: vue2组件实现懒加载浅析
推荐阅读
-
Jexus 5.8.2正式发布! 为Asp.Net Core生产环境提供平台支持
-
微软官方发布VS2015, .NET 4.6, C# 6.0, F# 4.0正式版下载汇总
-
Asp.net core利用MediatR进程内发布/订阅详解
-
20190705-记IIS发布.NET CORE框架系统之所遇
-
详解ASP.NET Core 网站发布到Linux服务器
-
ASP.NET Core程序发布到Linux生产环境详解
-
Centos7系统下搭建.NET Core2.0+Nginx+Supervisor环境
-
Amazing ASP.NET Core 2.0
-
Z从壹开始前后端分离【 .NET Core2.0/3.0 +Vue2.0 】框架之二 || 后端项目搭建
-
【翻译】.NET Core3.1发布