この記事は主に .NET Core 2.0 Preview2 リリース概要の関連内容を詳しく紹介します。興味のある方は参考にしてください。
はじめに
Core の新機能について。 2.0 については、私のこのブログをご覧ください。 この記事は、Priview2 のいくつかの改良点について説明します。 + 暗黙的に呼び出される場合、.NET Standard ライブラリは .NET Framework ライブラリを参照できます。
NETStandard.Library
ASP.NET Core 2.0 の依存関係を追加する必要がなくなりました。 - Preview2
は Visual Studio テンプレートを更新し、SPA プロジェクト用のテンプレートを追加しました。 (Angular、React.js、React.js、Redux) などが含まれます。
.NET Framework フレームワークを使用して Visual Studio 2017 で新しい ASP.NET Core プロジェクトを作成するためのテンプレートを追加しました。
currentConnections、MaxRequestBodySize、RequestBodyMinimumDataRate) などを含むいくつかの構成オプションを追加します。
Razor は C# 7.1 をサポートしています。 この構成は、csproj で
0f3802d193a0548f1e8805d4090d60c7latesta1ce00407b3b68bab908063fc8f7cbae
を指定することでオンにできます。
Razor Page に 2 つの新しい フィルター
(IPageFilter、IAsyncPageFilter) を追加しました。
Entity Framework Core 2.0 - Preview2
新しい NuGet パッケージとツールキット (Microsoft.EntityFrameworkCore.Tools.DotNet) FromSql および ExecuteSqlCommand の String 補間により、生成される 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
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; } }
データベース関数マッピングでは、コード内でデータベースに定義された関数を使用できます。戻り値は単一 (スカラー) のみであることに注意してください。 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 の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。