var mongoServer = MongoServer.Create("mongodb://<connectionstring>");
var database = mongoServer.GetDatabase("mydatabase");
string mycollectionCount database.Eval("function() { return db.mycollection.count(); }").ToString();
これは、たとえば次のようにプロパティタイプを変更しようとしている場合に役立ちます。
string updateScript = @"
function () {
db.some_items.find().forEach(function(documentItem) {
documentItem.some_collection.forEach(function(collectionItem) {
if (typeof collectionItem.SomeProperty === 'number'
&& Math.floor(collectionItem.someProperty) === collectionItem.someProperty)
{
collectionItem.someProperty = '' + collectionItem.someProperty;
}
});
db.modules_elementary.save(documentItem);
});
return true;
}";
var updateResult = MongoReadDatabase.Database.Eval(updateScript).ToString();
if (updateResult != "true")
{
throw new ApplicationException("Update of something failed");
}
このコードは、someProperty
のタイプを変更します コレクションのコレクションの要素です:
some_items mongo collection:
{
some_collection: [{ someProperty: 12, ....}],
....
}