zoukankan      html  css  js  c++  java
  • C#中使用MongoDb

    首先从网上下载MongoDB。地址http://www.mongodb.org/,找到适合自己的下载

    这是我下载的。

    在E盘新建个文件夹,将刚才下载的zip解压,将其中bin目录下的文件全部拷贝至刚才新建的文件夹。

    然后在其中再建立个data文件夹。

    然后通过cmd去启动你的MongoDB

    看我红线框出来的即可。上面打错了 - -

    将mongodb添加至系统服务中:

    E:\webdev\mongodb>mongod --logpath e:\webdev\mongodb\logs\mongodb.log --logappen
    d --dbpath e:\webdev\mongodb\data --directoryperdb --serviceName MongoDB --install

    然后访问localhost:27017看到如下所示,就表示你的MongoDB已经启动完毕

    增加:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Runtime.Serialization;
    using System.Data;
    using System.Data.SqlClient;
    using MongoDB.Bson;
    using MongoDB.Driver;

    namespace ConsoleApplication1
    {
    class Program
    {
    static void Main(string[] args)
    {
    //连接信息
    string conn = "mongodb://localhost";
    string database = "demoBase";
    string collection = "demoCollection";

    MongoServer mongodb = MongoServer.Create(conn);//连接数据库
    MongoDatabase mongoDataBase = mongodb.GetDatabase(database);//选择数据库名
    MongoCollection mongoCollection = mongoDataBase.GetCollection(collection);//选择集合,相当于表

    mongodb.Connect();

    //普通插入
    var o = new { Uid = 123, Name = "xixiNormal", PassWord = "111111" };
    mongoCollection.Insert(o);

    //对象插入
    Person p = new Person { Uid = 124, Name = "xixiObject", PassWord = "222222" };
    mongoCollection.Insert(p);

    //BsonDocument 插入
    BsonDocument b = new BsonDocument();
    b.Add("Uid", 125);
    b.Add("Name", "xixiBson");
    b.Add("PassWord", "333333");
    mongoCollection.Insert(b);

    Console.ReadLine();
    }
    }

    class Person {
    public int Uid;
    public string Name;
    public string PassWord;

    }
    }

    结果:

    都是上述配置写的,程序会自动建立对应的库和集合。

    下面的操作不上完整代码了:

                /*---------------------------------------------
    * sql : SELECT * FROM table
    *---------------------------------------------
    */
    MongoCursor<Person> p = mongoCollection.FindAllAs<Person>();

    /*---------------------------------------------
    * sql : SELECT * FROM table WHERE Uid > 10 AND Uid < 20
    *---------------------------------------------
    */
    QueryDocument query = new QueryDocument();
    BsonDocument b = new BsonDocument();
    b.Add("$gt", 10);
    b.Add("$lt", 20);
    query.Add("Uid", b);

    MongoCursor<Person> m = mongoCollection.FindAs<Person>(query);

    /*-----------------------------------------------
    * sql : SELECT COUNT(*) FROM table WHERE Uid > 10 AND Uid < 20
    *-----------------------------------------------
    */
    long c = mongoCollection.Count(query);

    /*-----------------------------------------------
    * sql : SELECT Name FROM table WHERE Uid > 10 AND Uid < 20
    *-----------------------------------------------
    */
    QueryDocument query = new QueryDocument();
    BsonDocument b = new BsonDocument();
    b.Add("$gt", 10);
    b.Add("$lt", 20);
    query.Add("Uid", b);
    FieldsDocument f = new FieldsDocument();
    f.Add("Name", 1);

    MongoCursor<Person> m = mongoCollection.FindAs<Person>(query).SetFields(f);
    /*-----------------------------------------------
    * sql : SELECT * FROM table ORDER BY Uid DESC LIMIT 10,10
    *-----------------------------------------------
    */
    QueryDocument query = new QueryDocument();
    SortByDocument s = new SortByDocument();
    s.Add("Uid", -1);//-1=DESC

    MongoCursor<Person> m = mongoCollection.FindAllAs<Person>().SetSortOrder(s).SetSkip(10).SetLimit(10);





  • 相关阅读:
    jQuery下拉菜单演示
    乐易拍电子商务系统(asp.net+extjs)版本1.1 统计实例(拖动选择统计选项)
    乐易拍电子商务系统(asp.net+ extjs)
    浅析JavaScript的原型链
    AMQP协议
    开源.net进销存管理系统源码
    RabbitMQ学习笔记
    乐易拍在线考试模仿驾校考试
    show 一下我的在线考试系统
    cxf 生成 wsdl 缺陷!!!!!
  • 原文地址:https://www.cnblogs.com/yimiao/p/2245637.html
Copyright © 2011-2022 走看看