You are on page 1of 5

Start MongoDB with CSharp

Bi vit ny c thc hin trn mi trng Windows (XP Professional SP 3) vi Visual Studio 2008. Nu cn thi gian ti s c gng lm thm mt bi vit v MongoDB vi CSharp(Mono Project) trn mi trng Linux trong thi gian sp ti.

Ci t u tin, cc bn ti phin bn MongoDB mi nht ph hp vi phin bn h iu hnh ca mnh ti trang: http://www.mongodb.org/display/DOCS/Downloads


Cc tc gi MongoDB gi l nn s dng phin bn x64 c nhiu li th hn, nhng nu ci t pht trin v s dng trong thi gian ngn th ti bn x86 cng khng thnh vn (mt s gii hn hn nhng ti ngh vy cng dng ri ).

Gii nn file ti v truy cp th mc {Mongo ROOT Directory}\bin sn sng cho nhng thao tc k tip: V d: Trn my tnh ca ti, ti gii nn file ti v ra th mc gc ca a cha h iu hnh ( L), i tn th mc thnh mongodb-win32-i386 <vic ny khng cn thit nhng ti thch vy sau ny c cp nht bn mi cng ch cn gii nn bn mi ln, cc cu hnh c s khng b thay i na>. Sau truy cp vo th mc L:\mongodb-win32-i386\bin sn sng cho cc bc tip theo .

To th mc cha c s d liu Mc nh MongoDB s lu tr cc c s d liu ng dn \data\db nhng li khng t ng to ng dn ny do chng ta phi to th mc ny s dng cu hnh mc nh: 1. Khi ng cmd (Phm tt Windows + R g cmd ENTER). 2. G lnh cd \ tr v ng dn gc (thng l a C:\). 3. G lnh mkdir \data\ to th mc data (Thng l: C:\data)

4. G lnh mkdir \data\db to th mc db trong th mc data (thng l C:\data\db). Ok, chng ta hon thnh to th mc s dng cu hnh mc nh. Bn hon ton c th to th mc ny bng cc phn mm khc c h tr giao din nh Total Commander, Windows Explorer, y ti thch dng cmd hn v cht na cng s s dng cmd tng tc vi mongodb.

Bn cnh , bn c th t file d liu bt c u bng cch s dng thm tham s --dbpath khi khi ng mongodb.

Khi ng v kt ni n mongodb Server Ok, gi kim tra li ng dn \bin\ trn xem c 2 file sau cha: mongod.exe y l database Server mongo.exe y l adminstrative Shell (tng t tng tc kiu cmd). Nu hai file ny ri th chng ta bt u khi ng mongoDB Server, nu khng th bn phi lm li bc ci t :P.

Ok, khi ng mongo database server thng qua: {your_mongo_directory}\bin\mongod Vi {your_mongo_directory} l ng dn bn ci t mongo (gii nn). y l hnh thc khi ng Manual (khi cn mi kch hot), bn cng hon ton c th khi ng MongoD nh mt service ca Windows (c kch hot ngay khi khi ng, sn sng phc v bt c lc no), lm c vic , bn tham kho thm help ca mongod (mongod --help). Ti thng s dng hnh thc khi ng Manual, do , thng to sn 1 file BAT vi ni dung nh sau:

@Echo OFF {Full_Mongo_Directory}\bin\mongod --dbpath={Your_Database_File} Save li vi tn StartMongoDB.bat ngoi mn hnh Desktop tin cho vic s dng.

Ok, gi khi ng giao din tng tc ca mongo kim tra kt ni: 1. Kch hot mongo.exe (click p vi mongo.exe hoc khi ng bng cmd). 2. Mongo.exe mc nh s kt ni ti mongod server chy trn localhost s dng c s d liu c tn test (Tham kho thm mongo --help bit thm chi tieet0. 3. OK, gi th vi cu lnh mongo kim tra kt ni ti mongod c hon thin khng.

Ci t MongoDB CSharp Driver C# Driver cha hai th vin: Th vin BSON Th vin C# Driver (cn km theo BSON Library). Truy cp vo http://github.com/mongodb/mongo-csharp-driver/downloads hoc http://github.com/mongodb/mongo-csharp-driver. Chn 1 bn ph hp ri ti v.

( y, ti s dng bn https://github.com/downloads/mongodb/mongo-csharp-driver/CSharpDriver1.1.0.4184.zip)

Ok, copy 2 file dll trong file nn vo th mc Project ca bn ri add Reference ti MongoDB.Driver.dll, thm using MongoDB; vo m ngun s dng cc kt ni ti c s d liu. y l m ngun 1 chng trnh test (nh add Reference nh):
using System; using MongoDB.Driver; namespace MongoTest { internal class Program { private static void Main( string[] args ) { // Connect to the mongo instance. var mongo = new Mongo(); mongo.Connect(); // Use the myorders database. Database db = mongo.GetDatabase( "myorders" ); // Get the orders collection. IMongoCollection orders = db.GetCollection( "orders" ); // Create a new order. var order = new Document(); order["orderAmount"] = 57.22; order["customerName"] = "Elmer Fudd"; // Add the new order to the mongo orders colleciton. orders.Insert( order ); Console.WriteLine( string.Format( "Inserted: {0}", order ) ); // Create a specification to query the orders collection. var spec = new Document(); spec["customerName"] = "Elmer Fudd"; // Run the query. Document result = orders.FindOne( spec ); Console.WriteLine( string.Format( "Found: {0}", result ) ); Console.WriteLine("Press Enter to Exit."); Console.ReadLine(); }

} }

Nu c li g bo ra v vic khai bo cc trng trong MongoDB bn c th dng Menu Resolve trong Menu Context sa li . Fix xong xui Build Run !

Tham kho thm


http://nosql.mypopescu.com/post/381867455/mongodb-in-the-windows-environment https://github.com/samus/mongodb-csharp http://jasona.wordpress.com/2010/02/04/getting-started-with-mongodb-and-c/

http://www.mongodb.org/display/DOCS/Quickstart+Windows

http://www.mongodb.org/display/DOCS/CSharp+Language+Center
http://www.chrisedwards.dreamhosters.com/blog/2010/05/02/accessing-mongodb-via-c/

You might also like