MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。今天主要给大家介绍一下C#编程语言下Mongodb的用法。开发环境为VS2015示例主要包括数据的增删改查、分页查询、文件存储等功能。有需要的朋友可以一起学习一下。
1、需要引用Mongodb程序集
MongoDB.Bson.dll
MongoDB.Driver.dll
2、创建Mongodb工具类库 MongodbHelper.cs
using MongoDB.Bson;using MongoDB.Driver;using MongoDB.Driver.Builders;using MongoDB.Driver.GridFS;using System;using System.Collections.Generic;using System.Configuration;using System.IO;using System.Linq;namespace MongodbHelper{ /// /// MongoDB的基本增删改查 /// public class MongodbTool { private readonly MongoDatabase _db; //数据库默认地址 private readonly string host = ConfigurationManager.AppSettings["db_host"]; //数据库默认名称 private readonly string db_name = ConfigurationManager.AppSettings["db_name"]; public MongodbTool() { var client = new MongoClient(host); //ip及端口 var server = client.GetServer(); _db = server.GetDatabase(db_name); //数据库名称 } #region 通用增删改查 /// /// 新增单个实体模型 modifiy by 2020-11-11 /// /// /// /// True:成功,False:失败 public bool Insert(T entity) { bool isOk = true; try { BsonDocument doc = entity.ToBsonDocument(); WriteConcernResult result = this._db.GetCollection(typeof(T).Name).Insert(doc); isOk = result.Ok; } catch (Exception ex) { } return isOk; } /// /// 新增实体集合模型 /// /// /// /// True:成功,False:失败 public bool Add(IEnumerable entity) { bool isOk = true; try { int s = 1; IEnumerable results = this._db.GetCollection(typeof(T).Name).InsertBatch(entity); foreach (var item in results) { if (item.Ok) isOk = true; else isOk = false; } } catch (Exception ex) { } return isOk; } /// /// 查询单条数据 /// /// /// 查询属性字段 /// 字段值