private static async Task BuscarLivros(string palavraChave, int skip) { var livroConnection = new ConexaoMongoDB <Livro>(); var livroCriterios = new BsonDocument() { { "Titulo", palavraChave } }; var filters = Builders <Livro> .Filter; var conditions = filters.Text(palavraChave, new TextSearchOptions { CaseSensitive = false, DiacriticSensitive = false }) & filters.Gte(x => x.Paginas, 100) & filters.AnyEq(x => x.Assunto, "Aventura"); //livroConnection.Collection.Indexes.CreateOne(new CreateIndexModel<Livro>(Builders<Livro>.IndexKeys.Text("$**"))); var livros = await livroConnection.Collection.Find(conditions).SortBy(x => x.Titulo).Skip(skip).Limit(5).ToListAsync(); Console.WriteLine($"Livros encontrados: {livros.Count}"); foreach (var item in livros) { Console.WriteLine($"{item.ToString()}"); } Console.ReadLine(); }
static async Task InsertMany() { List <Livro> livros = new List <Livro>(); livros.Add(new Livro("Dom Casmurro", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 2", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 4", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 10", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 20", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 30", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 32", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 33", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 34", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 35", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 36", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 37", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 38", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); livros.Add(new Livro("Dom Casmurro 39", "José Aldo", 1888, 120, new string[] { "Ficção", "Aventura" })); var livroConnection = new ConexaoMongoDB <Livro>(); await livroConnection.Collection.InsertManyAsync(livros); Console.WriteLine("Livros inseridos através de classe encapsulada"); }
private static async Task LendoLivros() { var livroConnection = new ConexaoMongoDB <Livro>(); var livros = await livroConnection.Collection.Find(new BsonDocument()).ToListAsync(); Console.WriteLine($"Livros encontrados: {livros.Count}"); foreach (var item in livros) { Console.WriteLine($"{item.ToString()}"); } Console.ReadLine(); }
static async Task ManipulandoClassesEncapsulado() { Livro livro = new Livro() { Titulo = "Noite sem fim", Autor = "Chupa Cabra", Ano = 1998, Paginas = 540, Assunto = new List <string>() { "Policial", "Romance", "Aventura" } }; var livroConnection = new ConexaoMongoDB <Livro>(); await livroConnection.Collection.InsertOneAsync(livro); Console.WriteLine("Livro inserido através de classe encapsulada"); }