sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB:ansluter till ASP.NET MVC-applikation

Katalogen där den lagras anges av din mongod-instans, inte din MVC-applikation. När du startar din mongod-instans bör du ha något i stil med:

mongod.exe --dbpath [where your db is stored]

För att veta mer om mongod.exe-parametrar, ta en titt på här .
Namnet på din databas anges i anslutningssträngen. Det skulle vara något i stil med:

mongodb://localhost/dbName?[options]

Du kan hitta hela instruktionen här .
Jag vet dock inte om jag är den enda som tycker att C#-drivrutinens API är lite knepigt. För att initiera en MongoClient (databasobjekt på toppnivå) skulle de flesta välja det enklaste sättet:

MongoClient client = new MongoClient(connStr);

På så sätt får du aldrig databasens namn. För att få det:

MongoUrl url = new MongoUrl(connStr);
MongoClient client = new MongoClient(url);
var dbName = url.DatabaseName  // retrive database name
var db = client.GetServer().GetDatabase(dbName);

På så sätt kan du lagra databasnamn med anslutningssträng. Vilket verkar vara bra för mig. Men du kan naturligtvis använda en annan appSetting för att lagra db-namnet.

Du behöver inte. När du infogar data i databasen för första gången kommer mongod att skapa databas åt dig, såväl som samlingar. Även om det senare kan vara användbart att bygga index på några av samlingarna.




  1. Vad skulle vara MongoDB C#-drivrutinens motsvarighet till följande fråga med arrayuppdateringsoperatorn $[<identifier>]

  2. Hur kan jag hantera arrayskärning i find({})?

  3. flera dokumenttransaktioner fungerar inte i c# med mongodb 4.08 community-server

  4. cappedMax fungerar inte i winston-mongodb logger i Node.js på Ubuntu