「C#からMongoDBを使う」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
imported>Administrator
(ページの作成:「NuGetに公式ドライバーがある。入れるだけでok。 MongoDB.Driver == データベースに接続する == <source lang="csharp"> var connectionString =...」)
 
imported>Administrator
1行目: 1行目:
NuGetに公式ドライバーがある。入れるだけでok。
+
[[NuGet]]に公式ドライバーがある。入れるだけでok。
  
 
MongoDB.Driver
 
MongoDB.Driver

2018年7月19日 (木) 04:39時点における版

NuGetに公式ドライバーがある。入れるだけでok。

MongoDB.Driver

データベースに接続する

var connectionString = "mongodb://127.0.0.1";
var client = new MongoClient(connectionString);
var db = client.GetDatabase("testdb");

POCOを作っておく

ちなみにプロパティに「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();