public void Dispose()
{
if(KeepTemp == true || this.Out != null || disposing == true) return;
disposing = true;
if(this.result == null || this.result.Ok == false) return; //Nothing to do.
//Drop the temporary collection that was created as part of results.
db.MetaData.DropCollection(this.result.CollectionName);
}