[[oktatas:programozás:csharp:dotnetcore|< .Net Core]]
====== .Net Core - MongoDB ======
* **Szerző:** Sallai András
* Copyright (c) 2024, Sallai András
* Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]]
* Web: https://szit.hu
===== Visual Sutudio Code =====
==== SQl Server Client(mssql) ====
Weijan Chen készíti a bővítményt.
Ajánlott bővítmény:
* SQl Server Clinet(mssql)
A neve ellenére a következő adatbázisok elérését teszi lehetővé:
* MySQL/MariaDB, PostgreSQL, SQLite, MongoDB
Az akciósávon megjelenik egy NoSQL ikon.
==== MongoDB for VS Code ====
Jonathan Lewis bővítménye.
Az akciós sávon megjelenik egy ikon levéllel.
MondgoDB Shell is indítható a parancs panelon.
===== Névtér és osztályok =====
Névterek:
* MongoDB.Driver
* MongoDB.Bson
Osztályok:
* MongoClient
* Builders
* BsonDocument
===== Illesztőprogram =====
dotnet add package MongoDB.Driver
===== Projekt készítése =====
dotnet new console -o app01
cd app01
===== Kapcsolat sztring =====
mongodb://localhost:27017
Felhasználónév és jelszó megadása:
mongodb://user:titok@localhost:27017
===== Lekérdezés =====
A zoldzrt adatbázis employees nevű gyűjteményének lekérdezése:
using MongoDB.Bson;
using MongoDB.Driver;
string host = "localhost";
string port = "27017";
string user = "root";
string pass = "titok";
string uri = $"mongodb://{user}:{pass}@{host}:{port}";
try {
var client = new MongoClient(uri);
var collection = client.GetDatabase("zoldzrt").GetCollection("employees");
var filter = Builders.Filter.Eq("name", "Nagy Jenő");
var document = collection.Find(filter).First();
Console.WriteLine(document);
Console.WriteLine("Ok");
} catch (MongoException e) {
Console.Error.WriteLine("Hiba! A kapcsolódás sikertelen!");
Console.Error.WriteLine(e.Message);
}
===== Linkek =====
* https://www.mongodb.com/docs/drivers/csharp/current/quick-start/ (2024)
* https://mongodb.github.io/mongo-csharp-driver/2.23.0/api/MongoDB.Driver.Legacy/MongoDB.Driver.html (2024)