繁体   English   中英

C#mongoDB驱动程序数据库连接

[英]C# mongoDB driver database connection

所以我刚开始编程,进入C#和noSQL数据库。 我当前正在开发一个小程序,该程序显示ASP.NET应用程序上的MongoDB数据库的数据。 我坚持连接到本地数据库。

数据需要存储在lblMotherboard中:这是我的代码。 builder.aspx:

<asp:Label ID="lblMotherboard" runat="server" Text=""></asp:Label>

builder.aspx.cs:

using MongoDB.Bson;
using MongoDB.Driver;

    public void showMobos_Click(object sender, EventArgs e)
    {
        var name = "";
        var connectionString = "mongodb://localhost:27017/";
        var mongoClient = new MongoClient(connectionString);
        MongoServer server = mongoClient.GetServer(); 
        MongoDatabase database = server.GetDatabase("mydb");

        MongoCollection<Post> mobos = database.GetCollection<Post>("moederborden");
        foreach (Post parts in mobos.FindAll())
        {
            name = name + " " + parts.Aanbieder + " " + parts.ProductNaam; 
        }
        lblMotherboard.Text = name; 
    }

单击按钮时showMobos_Click启动。 它不打印任何数据。 怎么了?

样本文件:

{
    "_id" : ObjectId("54a287ef0d0a7f888510d14e"),
    "Aanbieder" : "Coolblue",
    "Productlink" : "http://computerstore.nl/product/470130/category-208983/asrock-z97-extreme6.html",
    "Productnaam" : "Asus H97-Pro Gamer",
    "Prijs" : "129,-",
    "Socket" : "1150"
} 

Post.class:

public class Post
{
    public ObjectId _id { get; set; }
    public String Aanbieder { get; set; }
    public String Productlink { get; set; }
    public String Productnaam { get; set; }
    public decimal Prijs { get; set; } 
    public int Socket { get; set; } 
}

您必须将Prijs更改为数字

在mongo控制台中运行此命令:

db.moederborden.find().forEach(function(doc)
{
    var price = doc.Prijs.replace(',', ''); // it may be vary for your other document
    price = price.replace('-', '');    
    doc.Prijs = Number(price);

    db.moederborden.update({_id : doc._id} , doc);
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM