首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

用C#操作Mongodb(c#mongodb驱动)

用C#操作Mongodb(c#mongodb驱动)

1.对数据库的操作主要还是增删改查
2.了解c#操作mapreduce的语法


我们先布置驱动环境,再通过实例来了解一下相关操作语法。






方法一:驱动工程直接下载
https://github.com/mongodb/mongo-csharp-driver/downloads

下载驱动。驱动有两个文件
  • MongoDB.Bson.dll
  • MongoDB.Driver.dll
可以直接下载这两个驱动,或者遵守下载源码进行编译生成。下载的源码可以看些test例子


方法二:驱动源码下载后编译得到驱动工程
地址:
https://github.com/mongodb/mongo-csharp-driver








下载的是源代码,进行编译后就可以得到MongoDB.Bson.dll,MongoDB.Driver.dll这两个驱动。




驱动说明:
http://docs.mongodb.org/ecosystem/tutorial/use-csharp-driver/

驱动说明中文翻译:
http://www.bwxxkj.com/a/jishuzhongxin/shujukukaifa/2013/0109/160953.html



驱动API说明:
http://api.mongodb.org/csharp/current/





下面通过实例操作来熟悉一下:


引入驱动


在新建的c#工程中添加这两个dll文件并引用它们,并且应用如下定名空间
至少要引用如下定名空间
  • using MongoDB.Bson;

  • using MongoDB.Driver;

用得比较多的命名空间

  • using MongoDB.Driver.Builders;



  • using MongoDB.Driver.GridFS;



  • using MongoDB.Driver.Linq;


可能用到的命名空间

  • using MongoDB.Bson.IO;



  • using MongoDB.Bson.Serialization;



  • using MongoDB.Bson.Serialization.Attributes;



  • using MongoDB.Bson.Serialization.Conventions;



  • using MongoDB.Bson.Serialization.IdGenerators;



  • using MongoDB.Bson.Serialization.Options;



  • using MongoDB.Bson.Serialization.Serializers;



  • using MongoDB.Driver.Wrappers;



把这两文件复制进工程中



引用它们









添加命名空间






好 可以用了 下面开始进行操作




对mongodb的数据进行操作有两种方法:
1.先构造好类的结构,用这个结构操作数据。
2.直接操作数据。


插入数据:
方法一:
增加一个Student类,构建student的构造。




类的代码如下:


  • using System;

  • using System.Collections.Generic;

  • using System.Linq;

  • using System.Text;



  • namespace mymongotest

  • {

  •     class  Student_Insert

  •     {





  •         public string 姓名{get;set;}



  •         public string 学号{get;set;}



  •         public Information[] 个人信息{get;set;}











  •     }

  •     class Information

  •     {



  •         public string Name { get; set; }



  •         public string Value { get; set; }



  •     }



  • }




引用命名空间:


  • using MongoDB.Bson.Serialization;

  • using MongoDB.Driver.Builders;



插入按钮的代码:



  •   private void button1_Click(object sender, EventArgs e)

  •         {

  •             MongoClient client;

  •             MongoServer server;

  •             MongoDatabase database;



  •             var conStr = "mongodb://192.168.0.188";

  •             client = new MongoClient(conStr);



  •             server = client.GetServer();

  •             database = server.GetDatabase("test");

  •             var coll = database.GetCollection("student");



  •             var sInsert = @"{""姓名"":""刘备"",""学号"":""001"",

  • ""个人信息"":[

  • {""Name"":""性别"",""Value"":""男""},

  • {""Name"":""班级"",""Value"":""1班""},

  • {""Name"":""专业"",""Value"":""物理""}

  • ]

  • }";

  •             var bd = BsonSerializer.Deserialize<Student_Insert>(sInsert);

  •             coll.Insert(bd);



  •             MessageBox.Show("入库结束");

  •         }


运行,点击插入按钮用MongoVue查看结果




插入成功
返回列表