1、下载官方for C#驱动

2、导入2个dll文件

3、连接字符串 

    <add key="MongoConn" value="mongodb://127.0.0.1:27017"/>
<add key="Database" value="mytest"/>

4、获取MongoDatabase对象

     public static MongoDatabase GetMongoDatabase()
{
MongoClient mongoClient = new MongoClient(ConfigurationManager.AppSettings["MongoConn"]);
MongoServer mongoServer = mongoClient.GetServer();
return mongoServer.GetDatabase(ConfigurationManager.AppSettings["Database"]);
}

5、新建Model对象

    可以指定,表中的实际字段名称

        [BsonElement("_id")]
public ObjectId Id { get; set; }
[BsonElement("name")]
public string Name { get; set; }
[BsonElement("sex")]
public string Sex { get; set; }
[BsonElement("sec")]
public string Sec { get; set; }
[BsonElement("sd")]
public string Sd { get; set; }
[BsonElement("age")]
public int Age { get; set; }

6、查询

 //IMongoQuery query=  Query.EQ("name", "hao");  查询条件
MongoCursor<UserModel> res = MongoHelper.GetMongoDatabase().GetCollection("users").FindAllAs<UserModel>();
ViewData.Model = res;
return View();

7、插入封装的Model对象

 public ActionResult Insert(UserModel userModel)
{
WriteConcernResult res= MongoHelper.GetMongoDatabase().GetCollection("users").Insert(userModel);
if (res.Ok)
{
return Json("添加成功",JsonRequestBehavior.AllowGet);
}
return Json("添加失败", JsonRequestBehavior.AllowGet); }

8、根据objectId删除

IMongoQuery query = Query.EQ("_id", new BsonObjectId(id));
WriteConcernResult res= MongoHelper.GetMongoDatabase().GetCollection("users").Remove(query);
if (res.Ok)
{
return Json("删除成功", JsonRequestBehavior.AllowGet);
}
return Json("删除失败", JsonRequestBehavior.AllowGet);

9、更新数据

    可以使用save方法或者update方法,save方法比较方便。

public ActionResult Edit(string id)
{
UserModel res =
MongoHelper.GetMongoDatabase().GetCollection("users").FindOneByIdAs<UserModel>(new BsonObjectId(id));
ViewData.Model = res;
return View();
} [HttpPost]
public ActionResult Edit(UserModel userModel,string Id)
{ //此处UserModel的id不能获取 要转成ObjectId
userModel.Id=new ObjectId(Id);
//save操作会根据id更新 有相同id更新 没有匹配的添加
WriteConcernResult res = MongoHelper.GetMongoDatabase().GetCollection("users").Save(userModel);
//也可使用下面的方法
//WriteConcernResult res = MongoHelper.GetMongoDatabase().GetCollection("users").Update(Query.EQ("_id", new BsonObjectId(userModel.Id)), new UpdateDocument(userModel.ToBsonDocument()));
if (res.Ok)
{
return Json("更新成功", JsonRequestBehavior.AllowGet);
}
return Json("更新失败", JsonRequestBehavior.AllowGet);
}

Mongodb基本操作之.net的更多相关文章

  1. MongoDB 基本操作和聚合操作

    一 . MongoDB 基本操作 基本操作可以简单分为查询.插入.更新.删除. 1 文档查询 作用 MySQL SQL  MongoDB  所有记录  SELECT * FROM users;  db ...

  2. 【MongoDB详细使用教程】二、MongoDB基本操作

    目录 数据类型 数据库操作 集合操作 数据操作 增 查 改 修改整行 修改指定字段的值 删 数据类型 MongoDB常见类型 说明 Object ID 文档ID String 字符串,最常用,必须是有 ...

  3. MongoDB【第三篇】MongoDB基本操作

    MongoDB的基本操作包括文档的创建.删除.和更新 文档插入 1.插入 #查看当前都有哪些数据库 > show dbs; local 0.000GB tim 0.000GB #使用 tim数据 ...

  4. mongodb基本操作的学习

    1.基本操作: 如何安装?创建存放数据的文件夹 robomongo: 图形化管理工具 create -->save -->connect 创建数据库:use Database_name 检 ...

  5. 30分钟让你了解MongoDB基本操作

    今天记录下MongoDB的基本操作,这只是最基本的,所以是应该掌握的. 数据库 数据库是一个物理容器集合.每个数据库都有自己的一套文件系统上的文件.一个单一的MongoDB服务器通常有多个数据库. 集 ...

  6. mongodb基本操作及存储图片显示方案

    先介绍下mongodb的基本操作及使用 第一部:开启安全性验证 如果需要给MongoDB数据库使用安全验证,则需要用--auth开启安全性检查,则只有数据库认证的用户才能执行读写操作,开户安全性检查, ...

  7. 30分钟让你了解MongoDB基本操作(转)

    今天记录下MongoDB的基本操作,这只是最基本的,所以是应该掌握的. 数据库 数据库是一个物理容器集合.每个数据库都有自己的一套文件系统上的文件.一个单一的MongoDB服务器通常有多个数据库. 集 ...

  8. MongoDB基本操作(包括插入、修改、子节点排序等)

    一.基本操作 1.新增文章 db.article.insert({title:"今天天气很好",content:"我们一起去春游",_id:1}) 2.新增一条 ...

  9. MongoDB(课时3 MongoDB基本操作)

    3.3 MongoDB的基本操作 在MongoDB数据库里面存在数据库的概念,但没有模式(所有的信息都是按照文档保存的),保存数据的结构是BSON结构,只不过在进行一些数据处理的时候才会使用到Mong ...

  10. 2 Mongodb基本操作

    1.基本操作 MongoDB将数据存储为一个文档,数据结构由键值(key=>value)对组成 MongoDB文档类似于JSON对象,字段值可以包含其他文档.数组.文档数组 安装管理mongod ...

随机推荐

  1. 一元多项式Polynomial的C语言实现

    /* 编译器:Dev-c++ 5.4.0 文件名:Polynomial.cpp 代码版本号:1.0 时间:2015年10月9日21:53:26 */ /* 总结: 1.结构体指针指向的区域要手动分配内 ...

  2. UICollectionView 讲解-备

    什么是UICollectionView UICollectionView是一种新的数据展示方式,简单来说可以把他理解成多列的UITableView(请一定注意这是UICollectionView的最最 ...

  3. 强大疯狂的qttools

    就是有点疑惑,为什么不整合到QT主项目中呢? 有空好好看看: https://github.com/qtproject/qttools/tree/dev/src ------------------- ...

  4. Android特效 五种Toast详解

    Toast是Android中用来显示显示信息的一种机制,和Dialog不一样的是,Toast是没有焦点的,而且Toast显示的时间有限,过一定的时间就会自动消失.而且Toast主要用于向用户显示提示消 ...

  5. android http协议post请求方式

    方式一:HttpPost(import org.apache.http.client.methods.HttpPost 代码如下: private Button button1,button2,but ...

  6. 8.2.1.8 IS NULL Optimization NULL 优化:

    8.2.1.8 IS NULL Optimization NULL 优化: Oracle 对待null值: SQL> create table t100(id int,name char(10) ...

  7. openwrt上wifi探针的实现

    openwrt上wifi探针的实现 探针是通过wifi搜集经过这个AP范围的手机的mac地址,没有什么深刻的东西,知乎上关于这个东西讨论的很多,有人觉得很有用,可以做很多增值的应用,有人觉得没啥用,不 ...

  8. 动态共享库(so)开发精悍教程

    动态共享库(so)开发精悍教程 翻译并根据实际情况进行了小小修改,仅关注Linux下动态共享库(Dynamic shared library .so)的开发. 1 简单的so实例 源文件 //test ...

  9. 【网贷投资手册】P2P行业揭秘

    [网贷投资手册]P2P行业揭秘     (中国电子商务研究中心讯)如果你手头有100元,你会拿它来做什么?跟好朋友去吃一顿?跟女朋友去看场电影?还是……你会想到拿100元去投资吗?100元太少了,买一 ...

  10. WPF Customize TabControl

    有篇很好的文章 http://www.blogs.intuidev.com/post/2010/01/25/TabControlStyling_PartOne.aspx 详细介绍了如何Customiz ...