C#からMongoDBを使う
データベースに接続する
var connectionString = "mongodb://127.0.0.1";
var client = new MongoClient(connectionString);
var db = client.GetDatabase("testdb");
POCOを作っておく
ObjectId型のIdプロパティはMongoDB側でUIDを格納するためのもの。またプロパティに「BsonIgnore」属性を利用するとPOCOでなくても大丈夫だったりする。
class Data {
[BsonId]
public ObjectId Id { get; set; }
public string Name { get; set; }
public DateTime? CreateAt {get; set; }
};
コレクションを取得する
コレクションってのはRDBでいうテーブルね。
var collection = DB.GetCollection<Data>("data");
コレクションにデータを格納してみる
ここはDapperでInsertするのと大して変わらないね。
var row = new Data {
Name = "test",
CreateAt = DateTime.Now,
};
collection.InsertOne(row);
コレクションからデータを検索してみる
なんとLINQで検索できる!こいつはスゲエ!
var x = collection.Find( x => Name == "Test" )
.SortByDescending(x => x.CreateAt)
.FirstOrDefault();