このリポジトリには、次の.NET Foundationプロジェクトがあります。これらのプロジェクトはMicrosoftによって維持され、MITライセンスの下でライセンスされています。
EFコアは、.NET用の最新のオブジェクトダタベースマッパーです。 LINQクエリ、変更、更新、およびスキーマ移行をサポートします。 EF Coreは、SQL Server、Azure SQLデータベース、SQLite、Azure Cosmos DB、Mariadb、MySQL、PostgreSQL、およびその他のデータベースをプロバイダープラグインAPIを使用して動作します。
EFコアはNugetで利用できます。ターゲットデータベースに対応するプロバイダーパッケージをインストールします。追加のデータベースについては、ドキュメントのプロバイダーのリストを参照してください。
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.EntityFrameworkCore.Sqlite
dotnet add package Microsoft.EntityFrameworkCore.Cosmos --versionオプションを使用して、インストールするプレビューバージョンを指定します。
毎日のビルドを使用して、最新のコードを取得し、EFコアに関するフィードバックを提供することをお勧めします。これらのビルドには、最新の機能とバグ修正が含まれています。プレビューと公式リリースは遅れて遅れています。
次のコードは、EFコアの基本的な使用法を示しています。 DbContextの構成、モデルの定義、データベースの作成については、ドキュメントの開始を参照してください。
using var db = new BloggingContext ( ) ;
// Inserting data into the database
db . Add ( new Blog { Url = "http://blogs.msdn.com/adonet" } ) ;
db . SaveChanges ( ) ;
// Querying
var blog = db . Blogs
. OrderBy ( b => b . BlogId )
. First ( ) ;
// Updating
blog . Url = "https://devblogs.microsoft.com/dotnet" ;
blog . Posts . Add (
new Post
{
Title = "Hello World" ,
Content = "I wrote an app using EF Core!"
} ) ;
db . SaveChanges ( ) ;
// Deleting
db . Remove ( blog ) ;
db . SaveChanges ( ) ;ほとんどの人は、上記のように、ビルド前のナゲットパッケージをインストールすることにより、EFコアを使用しています。あるいは、コードを構築し、パッケージを開発マシンに直接作成できます。
バグの修正、拡張機能、ドキュメントのコミュニティプルリクエストを歓迎します。詳細については、貢献する方法をご覧ください。
これらのプロジェクトの使用について特定の質問がある場合は、スタックオーバーフローで尋ねることをお勧めします。バグに遭遇した場合、または機能をリクエストしたい場合は、問題を提出してください。詳細については、サポートの取得を参照してください。
Microsoft.data.sqliteは、SQLiteの軽量ADO.NETプロバイダーです。 SQLiteのEFコアプロバイダーは、このライブラリの上に構築されています。ただし、独立して、または他のデータアクセスライブラリで使用することもできます。
最新の安定バージョンはNugetで入手できます。
dotnet add package Microsoft.Data.Sqlite --versionオプションを使用して、インストールするプレビューバージョンを指定します。
Daily Buildsを使用して最新のコードを取得し、Microsoft.data.sqliteでフィードバックを提供することをお勧めします。これらのビルドには、最新の機能とバグ修正が含まれています。プレビューと公式リリースは遅れて遅れています。
このライブラリは、接続、コマンド、データリーダーなどの一般的なADO.NET抽象化を実装しています。詳細については、Microsoft DocsのMicrosoft.data.sqliteを参照してください。
using var connection = new SqliteConnection ( "Data Source=Blogs.db" ) ;
connection . Open ( ) ;
using var command = connection . CreateCommand ( ) ;
command . CommandText = "SELECT Url FROM Blogs" ;
using var reader = command . ExecuteReader ( ) ;
while ( reader . Read ( ) )
{
var url = reader . GetString ( 0 ) ;
}ほとんどの人は、上記のように、ビルド前のヌゲットパッケージをインストールして、microsoft.data.sqliteを使用しています。あるいは、コードを構築し、パッケージを開発マシンに直接作成できます。
バグの修正、拡張機能、ドキュメントのコミュニティプルリクエストを歓迎します。詳細については、貢献する方法をご覧ください。
これらのプロジェクトの使用について特定の質問がある場合は、スタックオーバーフローで尋ねることをお勧めします。バグに遭遇した場合、または機能をリクエストしたい場合は、問題を提出してください。詳細については、サポートの取得を参照してください。