您好,登錄后才能下訂單哦!
小編給大家分享一下.NET Core 2.0 Preview2的案例分析,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
.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的案例分析有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。