好久没有写过Blog, 每天看着开源的Java社区流口水, 心里满不是滋味. 终于等到了今年六月份 dotnet core 的正式发布,

看着dotnet 社区也一步一步走向繁荣, 一片蒸蒸日上的大好景象. 不在绑定Windows, 相信众位dotneter的春天就要来了

废话不多说, 早就对dotnet core 跃跃欲试, 手头一个新项目也正计划使用dotnet core来开发. 正好自己做做调研, 就与大家分享一点使用MongoDB的经验.

首先, 安装VS Code, 并安装C#插件, 官网地址, 我把链接放这儿https://code.visualstudio.com/, 如果不会安装配置的话, 客官不送

除了C#语言插件, 我们还需要nuget插件.

扩展管理工具, 如图, 我安装的Nuget插件叫.net core project manager

安装后会要求重启VS code, 照做就是.

在vs code 的官网下载vs code后会有个创建dotnet core项目的指导. 如果你照做了用那个项目就ok. 如果你没照做就按下面的步骤创建一个项目.

1. 创建一个项目文件夹

2. 命令行中进入刚刚创建的文件加

3. 命令行输入命令: dotnet new

炒鸡简单是不是

紧接着我们要安装Mongodb的驱动.

在vs code 中打开command palette, 可以用快捷键Shift+Ctrl+P, 在里面输入nuget会出现提示, 如图

选择 add new package 会出现一个新的输入框, 输入mongodb 后回车.

会出现一些选项, 如图

选择第一个, MongoDB.Driver 是官方的驱动. 然后会再弹出一个新的对话框选择版本, 注意, 这个要选对, 要选2.3.0-beta1  2.3.0-beta1  2.3.0-beta1(重要的事情说三遍), 不要选择2.3.0-rc1, 开始因为用了错误的版本花了好多时间.

安装完成会提示restore一下, 照做就是.

然后安装Mongodb, 并启动mongo的服务.

Mongodb的官网地址:https://www.mongodb.com/, 执行一下命令:

mongod --dbpath c:\mongodata

好了, 环境我们都准备好了, 重头戏来喽

在代码文件中添加如下两个命名空间:

using MongoDB.Bson;
using MongoDB.Driver;

要进行数据操作, 先实例一个MongoClient

var client = new MongoClient("mongodb://127.0.0.1:27017");

然后创建database和collection

var database = client.GetDatabase("foo");
var collection = database.GetCollection<BsonDocument>("bar");

之后我们就可以尝试插入一条数据, 代码如下

var document = new BsonDocument
            {
                { "name", "SqlServer" },
                { "type", "Database" },
                { "count", 5 },
                { "info", new BsonDocument
                    {
                        { "x", 111 },
                        { "y", 222 }
                    }}
            };

collection.InsertOne(document);

插入数据后我们看一下是否成功, 可以Count一下, 看Collection中的总数

var count = collection.Count(new BsonDocument());
Console.WriteLine("Collection contains {0} document.", count);

再试试查询

var result = collection.Find(new BsonDocument()).FirstOrDefault();
Console.WriteLine("I got the query result:");
Console.WriteLine(result);

代码很简单, 大家自行尝试吧, Mongodb 官网有个.net driver的指导http://mongodb.github.io/mongo-csharp-driver/2.2/getting_started/quick_tour/

dotnet core 使用 MongoDB 进行高性能Nosql数据库操作的更多相关文章

  1. 选择高性能NoSQL数据库的5个步骤

    来源:Redislabs作者:Shabih Syed 翻译:Kevin (公众号:中间件小哥) 构建在线和运营应用程序的开发团队越来越多地选择一类新的数据库来支持它们.它被称为“NoSQL”或“Not ...

  2. dotnet core 链接mongodb

    导入命名空间 using MongoDB.Bson; using MongoDB.Driver; 测试示例: var client = new MongoClient("mongodb:// ...

  3. 28个MongoDB NoSQL数据库的面试问答

    MongoDB是目前最好的面向文档的免费开源NoSQL数据库.如果你正准备参加MongoDB NoSQL数据库的技术面试,你最好看看下面的MongoDB NoSQL面试问答.这些MongoDB NoS ...

  4. NoSQL数据库介绍

    NoSQL在2010年风生水起,大大小小的Web站点在追求高性能高可靠性方面,不由自主都选择了NoSQL技术作为优先考虑的方面.今年伊始,InfoQ中文站有幸邀请到凤凰网的孙立先生,为大家分享他之于N ...

  5. MongoDB(一):NoSQL简介、MongoDB简介

    1. NoSQL简介 1.1 什么是NoSQL NoSQL(NoSQL= Not Only SQL),意即“不仅仅是SQL",是一项全新的数据库理念,泛指非关系型的数据库. 1.2 为什么需 ...

  6. 发布一个参考ssdb,使用go类似的实现redis高性能nosql:ledisdb

    起因 ledisdb是一个參考ssdb.採用go实现,底层基于leveldb,相似redis的高性能nosql数据库,提供了kv,list,hash以及zset数据结构的支持. 我们如今的应用极大的依 ...

  7. 高性能nosql ledisdb设计与实现(1)

    ledisdb是一个用go实现的基于leveldb的高性能nosql数据库,它提供多种数据结构的支持,网络交互协议参考redis,你可以很方便的将其作为redis的替代品,用来存储大于内存容量的数据( ...

  8. 发布一个参考ssdb,用go实现的类似redis的高性能nosql:ledisdb

    起因 ledisdb是一个参考ssdb,采用go实现,底层基于leveldb,类似redis的高性能nosql数据库,提供了kv,list,hash以及zset数据结构的支持. 我们现在的应用极大的依 ...

  9. Atitit.nosql api 标准化 以及nosql数据库的实现模型分类差异

    Atitit.nosql api 标准化 以及nosql数据库的实现模型分类差异 1. 常用的nosql数据库MongoDB  Cassandra1 1.1. 查询> db.blogposts. ...

随机推荐

  1. 【腾讯Bugly干货分享】基于RxJava的一种MVP实现

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57bfef673c1174283d60bac0 Dev Club 是一个交流移动 ...

  2. MapReduce剖析笔记之三:Job的Map/Reduce Task初始化

    上一节分析了Job由JobClient提交到JobTracker的流程,利用RPC机制,JobTracker接收到Job ID和Job所在HDFS的目录,够早了JobInProgress对象,丢入队列 ...

  3. WCF学习之旅—WCF服务配置(十四)

    一.概述 我们在前面章节中讲了寄宿,在前面的实例中也用到了配置文件,这一篇主要讲讲如何在应用配置文件,提高WCF程序的灵活性.在编写WCF服务应用程序时,编写配置项也是其中一项主要工作,在前面的几个示 ...

  4. 基于Caffe的DeepID2实现(下)

    小喵的唠叨话:这次的博客,真心累伤了小喵的心.但考虑到知识需要巩固和分享,小喵决定这次把剩下的内容都写完. 小喵的博客:http://www.miaoerduo.com 博客原文: http://ww ...

  5. 解析大型.NET ERP系统 数据审计功能

    数据审计,英语表达是Audit,是追踪数据变化的过程,记录数据变化前后的值,供参考分析.通过设置,ERP可以追踪一个表的所有字段的变化,也可以只记录指定的字段的值变化.欧美企业每年都有独立的审计部门, ...

  6. 01.Web大前端时代之:HTML5+CSS3入门系列~初识HTML5

    Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 文档申明 <!--文档类型申明,html代表是ht ...

  7. MongoDB高级查询详细

    前言 前几篇,老玩家绕道即可,新手晚上闲着也是蛋疼,不如把命令敲一边,这样你就会对MongoDB有一定的掌握啦.如果没有安装MongoDB去看我的上一篇博客  MongoDB下载安装与简单增删改查 前 ...

  8. 【WPF】闲着没事,写了个支持数据列表分页的帮助类

    支持分页的MVVM组件大家可以网上找,老周这个类只是没事写来娱乐一下的,主要是功能简单,轻量级,至少它满足了我的需求,也许还有未知的 bug . 这个类支持对数据列表进行分页处理,原理是利用 Skip ...

  9. 【分布式】Zookeeper的Leader选举

    一.前言 前面学习了Zookeeper服务端的相关细节,其中对于集群启动而言,很重要的一部分就是Leader选举,接着就开始深入学习Leader选举. 二.Leader选举 2.1 Leader选举概 ...

  10. kafka性能参数和压力测试揭秘

    转自:http://blog.csdn.net/stark_summer/article/details/50203133 上一篇文章介绍了Kafka在设计上是如何来保证高时效.大吞吐量的,主要的内容 ...