MongoDBのコレクションインデックスをC#で追加(TTLの設定など)

 C#でTTLの設定などをやっているサンプルがなかなか見つからなかったのでメモ。
 まず必要なパッケージなど。
using MongoDB.Bson;

using MongoDB.Driver;
using System;
using System.Collections.Generic;


 あとは接続からインデックス作成まで。
var client = new MongoClient();

var db = client.GetDatabase("test");

var collectionName = "Foo";
var keyName = "createdAt";

var fieldDefinition = new StringFieldDefinition<BsonDocument>(keyName);
var indexDefinition = new IndexKeysDefinitionBuilder<BsonDocument>().Ascending(fieldDefinition);
var options = new CreateIndexOptions()
{
ExpireAfter = TimeSpan.FromSeconds(10)
};


db.GetCollection<BsonDocument>(collectionName)
.Indexes.CreateOne(indexDefinition, options);


var models = new List<CreateIndexModel<BsonDocument>>();
var model1 = new CreateIndexModel<BsonDocument>(indexDefinition, options);
models.Add(model1);

db.GetCollection<BsonDocument>(collectionName)
.Indexes.CreateMany(models);
comment: 0