zoukankan      html  css  js  c++  java
  • csharp: MongoDB

    安装配置:

    Install MongoDB on Windows(安装配置官方参考) http://docs.mongodb.org/manual/tutorial/install-mongodb-on-windows/

    1.Run MongoDB

    C:Program FilesMongoDBServer3.0inmongod.exe --dbpath d:datadb

    #配置数据库
    mongod.exe --dbpath d:datadb
    #配置日志文件
    mongod.exe --logpath D:datalogsmongodb.log --install

    #测试用户登录

    mongo -u geovindu -p

    2.C# 连接字符串

    <!--<add key="connectionString" value="Server=localhost:27017"/>-->
    <!--<add key="connectionString" value="mongodb://localhost:27017"/>-->
    <!--<add key="connectionString" value="Server=127.0.0.1:27017"/>-->
    <add key="connectionString" value="mongodb://127.0.0.1:27017"/>


    以上四项都可以

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Configuration;
    using MongoDB.Bson;
    using MongoDB.Driver;
    
    namespace MongoDB2.Model
    {
        /// <summary>
        /// Wrapper class to communicate with 'MyCompany' database.
        /// </summary>
        class MyCompany
        {
    
            /// <summary>
            /// 
            /// </summary>
            public MyCompany()
            {
    
            }
    
            /// <summary>
            /// Connection string to the Mongo database server
            /// </summary>
            public static string ConnectionString
            {
                get
                {
                    return ConfigurationManager.AppSettings["connectionString"];
                }
            }
    
            /// <summary>
            /// Creates sample data for two collections(or tables) i.e, Departments, Employees.
            /// </summary>
            public static void CreateData()
            {
                CreateDepartments();
                CreateEmployees();
            }
            
            #region Departments 
    
            /// <summary>
            /// Retrieve departments from MyCompany database.
            /// </summary>
            /// <returns></returns>
            public static List<Department> GetDepartments()
            {
                List<Department> lst = new List<Department>();
    
                MongoServer server = MongoServer.Create(ConnectionString);
                MongoCredentials credentials = new MongoCredentials("geovindu", "geovindu");
                MongoDatabase myCompany = server.GetDatabase("geovinDB");//,credentials//MyCompany
                MongoCollection<Department> departments = myCompany.GetCollection<Department>("Departments");
                foreach (Department department in departments.FindAll())
                {
                    lst.Add(department);
                }
    
                return lst;
            }
    
            /// <summary>
            /// Inserts sample departments data in MyCompany database
            /// </summary>
            private static void CreateDepartments()
            {
                string headOfDepartmentId;
    
                //insert department 'Development'
                headOfDepartmentId = "4f180083ef31ba0da8000010";
                CreateDepartment("Development", headOfDepartmentId);
    
                //insert department 'Accounts'
                headOfDepartmentId = "4f180083ef31ba0da8000011";
                CreateDepartment("Accounts", headOfDepartmentId);
    
                //insert department 'Human Resource'
                headOfDepartmentId = "4f180083ef31ba0da8000012";
                CreateDepartment("Human Resource", headOfDepartmentId);
            }
    
            /// <summary>
            /// Insert the department
            /// </summary>
            /// <param name="departmentName"></param>
            /// <param name="headOfDepartmentId"></param>
            private static void CreateDepartment(string departmentName, string headOfDepartmentId)
            {
                MongoServer server = MongoServer.Create(ConnectionString);
                MongoCredentials credentials = new MongoCredentials("geovindu", "geovindu");
                MongoDatabase myCompany = server.GetDatabase("geovinDB");//, credentials //MyCompany
    
                MongoCollection<BsonDocument> departments = myCompany.GetCollection<BsonDocument>("Departments");
                BsonDocument deptartment = new BsonDocument {
                            { "DepartmentName", departmentName },
                            { "HeadOfDepartmentId", headOfDepartmentId }
                            };
    
                departments.Insert(deptartment);
            }
    
            /// <summary>
            /// Delete all data in departments collection in MyCompany database
            /// </summary>
            public static void DeleteDepartments()
            {
                MongoServer server = MongoServer.Create(ConnectionString);
    
                MongoCredentials credentials = new MongoCredentials("geovindu", "geovindu");
                MongoDatabase myCompany = server.GetDatabase("geovinDB");//, credentials//MyCompany
    
                MongoCollection<Department> departments = myCompany.GetCollection<Department>("Departments");
                departments.Drop();
            } 
            #endregion
    
            #region Employees 
    
            /// <summary>
            /// Retrieve employees from MyCompany database.
            /// </summary>
            /// <returns></returns>
            public static List<Employee> GetEmployees()
            {
                List<Employee> lst = new List<Employee>();
    
                MongoServer server = MongoServer.Create(ConnectionString);
                MongoCredentials credentials = new MongoCredentials("geovindu", "geovindu");
                MongoDatabase myCompany = server.GetDatabase("geovinDB");//, credentials//无验证密码登录
    
                MongoCollection<Employee> employees = myCompany.GetCollection<Employee>("Employees");
                foreach (Employee employee in employees.FindAll())
                {
                    lst.Add(employee);
                }
    
                return lst;
            }
    
            /// <summary>
            /// Inserts sample employees data in MyCompany database
            /// </summary>
            private static void CreateEmployees()
            {
                // add 5 sample Employees
                for (int i = 1; i <= 5; i++)
                {
                    string departmentId = "4f180083ef31ba0da8000010";
                    CreateEmployee("FirstName" + i, "LastName" + i, "Address" + i, "City" + i, departmentId);
                }
            }
    
            /// <summary>
            /// Insert the employee
            /// </summary>
            /// <param name="departmentName"></param>
            /// <param name="headOfDepartmentId"></param>
            private static void CreateEmployee(string firstName, string lastName, string address, string city, string departmentId)
            {
                MongoServer server = MongoServer.Create(ConnectionString);
                MongoCredentials credentials = new MongoCredentials("geovindu", "geovindu");
                MongoDatabase myCompany = server.GetDatabase("geovinDB");//, credentials//MyCompany
    
                MongoCollection<BsonDocument> employees = myCompany.GetCollection<BsonDocument>("Employees");
                BsonDocument employee = new BsonDocument {
                            { "FirstName", firstName },
                            { "LastName", lastName },
                            { "Address", address },
                            { "City", city },
                            { "DepartmentId", departmentId }
                            };
    
                employees.Insert(employee);
            }
    
            /// <summary>
            /// Delete all data in employees collection in MyCompany database
            /// </summary>
            public static void DeleteEmployees()
            {
                MongoServer server = MongoServer.Create(ConnectionString);
                MongoCredentials credentials = new MongoCredentials("geovindu", "geovindu");
                MongoDatabase myCompany = server.GetDatabase("geovinDB");//, credentials//MyCompany
    
                MongoCollection<Employee> employees = myCompany.GetCollection<Employee>("Employees");
                employees.Drop();
            } 
            #endregion
        }
    
        #region Department 
        /// <summary>
        /// Department represents a single item(record) stored in Departments collection.
        /// </summary>
        class Department
        {
            public ObjectId _id { get; set; }
            public string DepartmentName { get; set; }
            public ObjectId HeadOfDepartmentId { get; set; }
        } 
        #endregion
    
        #region Employee 
        /// <summary>
        /// Department represents a single item(record) stored in Employees collection.
        /// </summary>
        class Employee
        {
            public ObjectId _id { get; set; }
            public string FirstName { get; set; }
            public string LastName { get; set; }
            public string Address { get; set; }
            public string City { get; set; }
            public ObjectId DepartmentId { get; set; }
        } 
        #endregion
    }
    

      

  • 相关阅读:
    67. Add Binary
    66. Plus One
    64. Minimum Path Sum
    63. Unique Paths II
    How to skip all the wizard pages and go directly to the installation process?
    Inno Setup打包之先卸载再安装
    How to change the header background color of a QTableView
    Openstack object list 一次最多有一万个 object
    Openstack 的 Log 在 /var/log/syslog 里 【Ubuntu】
    Git 分支
  • 原文地址:https://www.cnblogs.com/geovindu/p/4795290.html
Copyright © 2011-2022 走看看