0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

C#Advent Calendar 2021

Day 14

C#アプリケーション開発に、NoSQLドキュメント指向組み込みデータベースCouchbase Liteを使ってみる

Last updated at Posted at 2021-12-14

はじめに

本稿では、C#アプリケーション開発に、NoSQLドキュメント指向組み込みデータベース Couchbase Liteを使うための具体的な方法について解説します。

本稿では、Couchbase LiteをC#アプリケーション開発で利用するためのセットアップ・動作確認までを行います。

Couchbase Liteをアプリケーション開発に利用する意義については、以下の記事をご参考ください。

確認環境

  • macOS Catalina Version 10.15.7
  • Visual Studio for Mac COMMUNITY 8.8.3

実行手順

プロジェクト作成

今回は、C#プログラミングでCouchbase Liteを使う方法を簡潔に示すため、コンソールアプリとしてプロジェクトを作成します。

対象のフレームワークとしては、「.NET5.0」を選んでいます。

MUUZDV-AFPYG-UADORA.png

メニューから、プロジェクト > 「NuGetパッケージの管理...」を開きます。

右上の「検索」フォームに「couchbase」と入力し、表示された項目から今回は、「Couchbase.Lite」を選びます(コミュニティエディションにあたります。商用利用の場合は、「Couchbase.Lite.Enterprise」を選択することになります)。

また、バージョンとして、最新の安定版である、2.8.6を選択します。

image.png

「パッケージの追加」ボタンを押下し進めていくと、下記のように、Couchbase.Liteが依存関係に追加されます。

Microsoft.NETCore.App (5.0.0).png

プログラミング・実行結果確認

Program.cs編集

インポート文として、下記を追加します。

using Couchbase.Lite;

Mainの内容を以下のように編集します。

        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            // データベース利用開始 (存在しない場合は、新規作成)
            var database = new Database("mydb");
            // ドキュメント作成・保存
            string id = null;
            using (var mutableDoc = new MutableDocument())
            {
                mutableDoc.SetFloat("version", 2.0f)
                    .SetString("type", "SDK");

                database.Save(mutableDoc);
                id = mutableDoc.Id;
            }

            // ドキュメント取得・更新
            using (var doc = database.GetDocument(id))
            using (var mutableDoc = doc.ToMutable())
            {
                mutableDoc.SetString("language", "C#");
                database.Save(mutableDoc);

                using (var docAgain = database.GetDocument(id))
                {
                    Console.WriteLine($"Document ID :: {docAgain.Id}");
                    Console.WriteLine($"Learning {docAgain.GetString("language")}");
                }
            }

        }

ビルドして実行します。下記のようにドキュメントIDとプロパティがコンソールに出力されます。

Hello World!.png

データベースファイル

下記のように作成されたデータベースを確認することができます。

$ find bin -name "*.cblite2"
bin/Debug/net5.0/CouchbaseLite/mydb.cblite2

最後に

本稿では、C#アプリケーション開発のために、プロジェクトにCouchbase Liteをセットアップし、基本的な操作が行えるところの確認までを行いました。
C#アプリケーション開発に組み込みデータベースを使った経験のある方であれば、以降の応用は、比較的簡単に可能かと思います。
最後に、次のステップに進むための情報を示して、本稿の締め括りとしたいと思います。

Couchbase Liteについての記事を以下の投稿で整理していますので、ご関心に応じて、参照してみてください。
https://qiita.com/yoshiyuki_kono/items/6a5bbad1b02196a25417

公式ドキュメントは、以下になります。

公式ドキュメントの一部として、各種チュートリアルが公開されています。

Couchbase Liteと双方向のデータ同期が可能なCouchbase Serverについては、日本語で読むことができるまとまった情報として、次の拙著を紹介させていただきます。

関連情報

今回の記事の一次参考情報を、以下示します。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?