Próbowałem dzisiaj rozwiązać ten sam problem. Oto, co znalazłem.
public static class MongoExtensions
{
public static BsonDocument RenderToBsonDocument<T>(this FilterDefinition<T> filter)
{
var serializerRegistry = BsonSerializer.SerializerRegistry;
var documentSerializer = serializerRegistry.GetSerializer<T>();
return filter.Render(documentSerializer, serializerRegistry);
}
}
Nie miałem dostępu do kolekcji podczas jej wywoływania, więc nie mogłem skorzystać z powyższych rozwiązań.
To pozwala ci zrobić
var json = filter.RenderToBsonDocument().ToJson();