• 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
    }
    

      

  • 相关阅读:
    ioctlsocket()
    阻塞式socket例子学习
    accept()
    listen()
    WSAStartup
    C#动态操作DataTable(新增行、列、查询行、列等)
    C# 连接SQL Server数据库的几种方式--server+data source等方式
    ExcelHelper类
    c#使用椭圆签名算法制作软件序列号
    LINQ查询操作符之First、FirstOrDefault、Last、LastOrDefault、ElementAt、ElementAtOrDefault、Contains、Any、All、Count 等
  • 原文地址:https://www.cnblogs.com/geovindu/p/4795290.html
Copyright © 2020-2023  润新知