C#からMongoDBを使う
2018年7月19日 (木) 04:41時点におけるimported>Administratorによる版 (→POCOを作っておく)
データベースに接続する編集
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();