.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等)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: kickstart文件制作与光盘镜像制作
下一篇: 水浒搞笑版足球11人
推荐阅读
-
.NET Core 3.0 ,WTM 2.3.9发布
-
net core WebApi——公用库April.Util公开及发布
-
.net core 发布到iis问题 HTTP Error 500.30 - ANCM In-Process Start Failure
-
汇总:ASP.NET Core中HttpContext获取传参数据,有哪些方式
-
在.NET Core 3.0中发布单个Exe文件(PublishSingleFile)
-
ASP.NET Core程序发布到Linux生产环境详解
-
Asp.net Core 2.0 OpenId Connect Handler缺失Claims?
-
使用NuGet将我们的ASP.NET Core类库打包并将程序包(类库)发布到NuGet平台上进行管理
-
Jexus 5.8.2正式发布! 为Asp.Net Core生产环境提供平台支持
-
.NET Core 2.0 Preview2 发布汇总