BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース NoRM: もうひとつのMongoDB向け.NETプロバイダ

NoRM: もうひとつのMongoDB向け.NETプロバイダ

原文(投稿日:2010/07/10)へのリンク

NoRMはMongoDBのラッパーとして動作する.NETライブラリだ。MongoDBに対する.NETプログラムの処理を取り扱う。強い型のインターフェイス、LINQのサポート、NETとMono双方をサポートしているのが特徴だ。

主な特徴は、

  • Providing a strongly-typed interface to MongoDBに対する強い型を持ったインターフェイスの提供。
  • MongoDBのほとんどのコマンドをサポート。
  • LINQ-to-MongoDBのサポート。
  • .NETとMono双方で利用できる。
  • BSONと.NET CLRタイプとの双方向のシリアライゼイション。BSONはMongoDBが使うJSONドキュメントをバイナリエンコードした形式だ。

NoRMの使用例(ウィキから引用)は、

//接続文字列はデータベースへのURI。必要な資格情報も含む。
var coll = (new Mongo(connString)).GetCollection<Product>();
//コレクション追加するために新しいオブジェクトを作成。
var obj = new Product();
obj._id = ObjectId.NewObjectID();
obj.Title = "Shoes";
//オブジェクトを保存
coll.Insert(obj);
//オブジェクトを検索。
var obj2 = coll.FindOne(new { _id = obj._id}).First();

MongoDB用のもうひとつの.NETプロバイダはMongoDB-CSharpだ。作者のSteve Wagner氏によれば、MongoDB-CSharpは.NET/WindowsとMono 2.0/Ubuntuでテスト済みだ。

Raven DBは.NETに特化したもうひとつのドキュメントデータベースだ。Raven DBがリリースされたとき、InfoQでも取り上げた。MongoDBとは違い、GNU AGPL v3.0の下で公開されている。Raven DBはオープンソースプロジェクトでは無料で利用できるが、商用製品では有料ライセンスを利用する必要がある。

この記事に星をつける

おすすめ度
スタイル

BT