C# 对MongoDB 进行增删改查的简单操作
C# 对MongoDB 进行增删改查的简单操作
下面演示下C#操作MongoDB驱动的简单的增删改查代码
运用到的MongoDB支持的C#驱动,当前版本为1.6.0
1,连接数据库
/// <summary>
/// 数据库连接
/// </summary>
private const string conn = "mongodb://127.0.0.1:27017";
/// <summary>
/// 指定的数据库
/// </summary>
private const string dbName = "mongodb_name";
/// <summary>
/// 指定的表
/// </summary>
private const string tbName = "table_text";
//创建数据连接
MongoServer server = MongoServer.Create(conn);
//获取指定数据库
MongoDatabase db = server.GetDatabase(dbName);
//获取表
MongoCollection col = db.GetCollection(tbName);
2、插入数据
因为MongoDB没有表的概念,所以自插入数据之前定义好自己的数据模型
User.cs
下面是添加数据的代码
/// <summary>
/// 添加
/// </summary>
/// <param name="text">内容</param>
/// <param name="articleId">文章ID</param>
/// <param name="channelId">频道ID</param>
/// <returns></returns>
public static void Add(User t)
{
//创建数据连接
MongoServer server = MongoServer.Create(conn);
//获取指定数据库
MongoDatabase db = server.GetDatabase(dbName);
//获取表
MongoCollection col = db.GetCollection(tbName);
//插入
col.Insert(t); }
3、删除操作
/// <summary>
/// 根据ObjectID 删除
/// </summary>
/// <param name="objId"></param>
public static void Delete(string objId)
{
//创建数据连接
MongoServer server = MongoServer.Create(conn);
//获取指定数据库
MongoDatabase db = server.GetDatabase(dbName);
//获取表
MongoCollection<User> col = db.GetCollection<User>(tbName); IMongoQuery query = Query.EQ("_id", new ObjectId(objId)); col.Remove(query);
}
4、修改
/// <summary>
/// 根据ObjectID 修改
/// </summary>
public static void Update(User t)
{
//创建数据连接
MongoServer server = MongoServer.Create(conn);
//获取指定数据库
MongoDatabase db = server.GetDatabase(dbName);
//获取表
MongoCollection<User> col = db.GetCollection<User>(tbName); BsonDocument bd = BsonExtensionMethods.ToBsonDocument(t); IMongoQuery query = Query.EQ("_id", t.Id); col.Update(query, new UpdateDocument(bd)); }
5、条件查询(简单)
/// <summary>
/// 根据ObjectID 查询
/// </summary>
public static User TuCao SelectOne(string objId)
{
//创建数据连接
MongoServer server = MongoServer.Create(conn);
//获取指定数据库
MongoDatabase db = server.GetDatabase(dbName);
//获取表
MongoCollection<User> col = db.GetCollection<User>(tbName);
//条件查询
return col.FindOne(Query.EQ("_id", new ObjectId(objId)));
}
6、查询全部
/// <summary>
/// 查询所有
/// </summary>
public static void SelectAll()
{
List<User> list = new List<User>(); //创建数据连接
MongoServer server = MongoServer.Create(conn);
//获取指定数据库
MongoDatabase db = server.GetDatabase(dbName);
//获取表
MongoCollection<User> col = db.GetCollection<User>(tbName);
//查询全部
list.AddRange(col.FindAll()); //--------------------------------
foreach (User t in col.FindAll())
{
string id = t.Id.ToString();
string text = t.Text;
DateTime dt = t.Createdate;
}
}
C# 对MongoDB 进行增删改查的简单操作的更多相关文章
- C# 对MongoDB 进行增删改查的简单操作 (转)
运用到的MongoDB支持的C#驱动,当前版本为1.6.0 下载地址:https://github.com/mongodb/mongo-csharp-driver/downloads 1,连接数据库 ...
- MongoDB入门 常用命令以及增删改查的简单操作
1,运行MongoDB服务mongod --dbpath=/usr/local/developmentTool/mongo/data/db/然后启动客户端mongo2,sudo service mon ...
- hbase 增删改查 api 简单操作
package com.utils; import java.io.IOException; import java.util.ArrayList; import java.util.List; im ...
- Java连接MongoDB进行增删改查
1.导入必须的包: 详情看项目:http://pan.baidu.com/s/1cvDAOY 2.通过Myeclipse创建WEB项目 3. 3.bean:创建实体类 package com.bean ...
- MongoDB的增删改查 转
MongoDB的增删改查 (黎明你好原创作品,转载请注明) MongoDB中数据的基本单元叫做文档,采用json的键-值的方式.多个键及其关联的值有序的存放在一起变是文档.类似于编程语言中的键值关系. ...
- Java实现mongodb原生增删改查语句
Java实现mongodb原生增删改查语句 2018-03-16 自动化测试时,需校验数据库数据,为了快速自动化,在代码中用原生增删改查语句操作mongodb 结构 代码 0 pom.xml < ...
- Scala对MongoDB的增删改查操作
=========================================== 原文链接: Scala对MongoDB的增删改查操作 转载请注明出处! ==================== ...
- python操作三大主流数据库(8)python操作mongodb数据库②python使用pymongo操作mongodb的增删改查
python操作mongodb数据库②python使用pymongo操作mongodb的增删改查 文档http://api.mongodb.com/python/current/api/index.h ...
- python 全栈开发,Day124(MongoDB初识,增删改查操作,数据类型,$关键字以及$修改器,"$"的奇妙用法,Array Object 的特殊操作,选取跳过排序,客户端操作)
一.MongoDB初识 什么是MongoDB MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介 ...
随机推荐
- AI 强化学习
强化学习(reinforcement learning,简称RL), agent policy state action 目标 最大化累计reward 参考链接: https://en.wikipe ...
- J2SE学习笔记
如何学习Java 一.面向对象设计思想 1.面向对象:开车去新疆,车怎么去的我不管,我只调用车的go() 方法即可. 2.类和对象:类可以看成一类对象的模板,对象可以看成该类的一个具体实例. 3.类和 ...
- 关于mysql主从架构master宕机后,请求转移问题解决办法
mysql架构:一主一从 问题一:有两台mysql数据库,已做好主从.如果运行某一天master服务器mysql故障导致前端请求无法处理怎么办? 答:将前端需要数据库处理的请求转移到slave机上. ...
- SQL 中使用 WITH AS 提高性能
一.WITH AS的含义WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到.有的时候,是为了让S ...
- Spring MVC 使用介绍(八)—— 类型转换
一.概述 spring类型转换有两种方式: PropertyEditor:可实现String<--->Object 之间相互转换 Converter:可实现任意类型的相互转换 类型转换的过 ...
- 不用Ajax时的传参方法
不用Ajax时的怎么传参 创建一个form表单 function test(){ var params = { "参数名": "参数值" }; postExce ...
- windows telnet 模拟 http请求
1. 开启windows自带的telnet客户端(控制面板 --> 程序 --> 启用或关闭windows功能 --> ) 2. 打开cmd,使用Telnet客户端 3. 按ctrl ...
- Numpy系列(六)- 形状操作
Numpy 有一个强大之处在于可以很方便的修改生成的N维数组的形状. 更改数组形状 数组具有由沿着每个轴的元素数量给出的形状: a = np.floor(10*np.random.random((3, ...
- SpringCloud笔记五:Feign
目录 什么是Feign? 有了Ribbon我还要Feign干嘛? 新建consumer-feign 修改api项目 引入Maven文件 新建feign的接口 启动项目 报错 发泄发泄心情,一个段落 什 ...
- Fiddler状态栏
Fiddler状态栏显示了Fiddler的一些配置信息,我们也可以点击这些配置信息进行快速配置. 以下图为例: 状态栏一共显示了四项信息:1.Capturing/空:2.过滤进程类型:3.Web Se ...