MongoDB的连接使用Web API [英] Connect MongoDB with Web API

查看:338
本文介绍了MongoDB的连接使用Web API的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想用的MongoDB API网站在Visual Studio 2013年所有我想要做的就是创建一个C#一个简单的数据库连接。我所有的code是在Values​​Controllers.cs文件。我创建了一个简单的模型类 -

I am trying to connect MongoDB with Web API in Visual Studio 2013. All I want to do is create a simple database with C#. All of my code is in ValuesControllers.cs file. I created a simple Model class -

public class Book
{
    [BsonId]
    public int Id { get; set; }
    public string Title { get; set; } 
}

和修改的Get方法

public IEnumerable<Book> Get()
{
     MongoClient client = new MongoClient();
     var server = client.GetServer();
     var db = server.GetDatabase("BookStore");
     var collection = db.GetCollection<Book>("Book");
     Book[] books = new Book[] 
     { 
            new Book {Id = 1, Title="Book Name 1" },
            new Book {Id = 2, Title="Book Name 2" },
            new Book {Id = 3, Title="Book Name 3" },
            new Book {Id = 4, Title="Book Name 4" }

     };
     collection.Save(books);
     return books;
}

它返回值,但不创建数据库。我在控制台应用程序尝试这样做,它的作品。
我想打一个简单的例子来连接MongoDB中。

It returns values but doesn't create database. I tried this in console application and it works. I want to make a simple example to connect MongoDB.

推荐答案

以下code应该工作。请确保您有在后台运行蒙戈数据库。

The following code should work. Make sure you have the mongo database running in the background.

我修改你的code如下:

I've modified your code as follows


  1. 创建MongoClient对象时,我添加了蒙戈连接URL
    所以它会连接到本地蒙戈分贝。

  2. 在保存图书到
    DB,而不是试图数组直接保存到数据库中,code
    现在遍历每个项目并单独保存。

下面是code

public IEnumerable<Book> Get()
{     
    var client = new MongoClient("mongodb://localhost:27017");
    var server = client.GetServer();
    var db = server.GetDatabase("BookStore");
    var collection = db.GetCollection<Book>("Book");
    Book[] books =
    {
         new Book { Id = 1, Title = "Book Name 1" }, 
         new Book { Id = 2, Title = "Book Name 2" },
         new Book { Id = 3, Title = "Book Name 3" }, 
         new Book { Id = 4, Title = "Book Name 4" }
    };
    foreach (var book in books)
    {
        collection.Save(book);
    }
    return books;
}

这篇关于MongoDB的连接使用Web API的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆