mcpField
C
cosmos-provider

cosmos-provider

github.com/dotnet開発14.8k45 回インストール今日更新
リポジトリ

cosmos-provider について

Entity Framework Core の Azure Cosmos DB プロバイダーを扱うためのスキルです。プロバイダー固有のデータモデリング、クエリと並行性の挙動、エミュレーターでのテスト上の注意点を説明します。

主な機能

  1. 01非リレーショナルなクエリパイプライン
  2. 02JSON ドキュメントのマテリアライズ
  3. 03所有型と複合型の埋め込み
  4. 04パーティションキー設定のガイダンス
  5. 05ETag による楽観的並行性制御

活用シーン

  1. 01Cosmos DB 向けドキュメントのモデリング
  2. 02クエリ向けパーティションキーの設定
  3. 03Cosmos DB エミュレーターでのテスト

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/dotnet/efcore --skill cosmos-provider

インストール後、Claude Code で/cosmos-providerを入力して読み込まれたか確認します。

詳細

Cosmos DB プロバイダー

独自の並列クエリパイプラインを備えた非リレーショナルプロバイダーです。ドキュメントのマテリアライズには JSON を使用します。

リレーショナルプロバイダーとの主な違い

  • マイグレーションはありません — EnsureCreated() を使用します
  • ドキュメントは JSON です — 所有型と複合型は埋め込みオブジェクトになります
  • パフォーマンスを確保するにはパーティションキーの設定が必要です
  • オプティミスティック同時実行制御には ETag を使用します
  • コンテナーをまたぐ結合はできません

テスト用 Azure Cosmos DB Emulator

  • Test__Cosmos__DefaultConnection が設定されていない場合、TestEnvironment.InitializeAsync() は Testcontainers.CosmosDb コンテナーを自動的に起動します。既存のエミュレーターを使用するには、環境変数を設定してください。
  • Linux エミュレーターでサポートされていない機能が必要なテストは、 [ConditionalFact(typeof(CosmosTestEnvironment), nameof(CosmosTestEnvironment.IsNotLinuxEmulator))] を使用してスキップしてください。

コメント