Asp.net mvc kullanarak mongodb veritabanını oluşturdum ama veritabanına baktığımda ekleme başarısız oldu. Konsol uygulamasında daha önce test ettim ve düzgün çalışıyor ama şimdi ! i mvc kullandığımda sorunu bulmuyorum bana yardım edebilir buasp.net mvc kullanarak mongodb veritabanı oluşturmak
//IDeviseRepository
namespace WebApplication6
{
public interface IDeviseRepository
{
Devise Add(Devise devise);
void MongoGoNow();
}
}
//DeviseRepository
namespace WebApplication6
{
public class DeviseRepository : IDeviseRepository
{
public IMongoDatabase db;
public DeviseRepository()
{
MongoClientSettings settings = new MongoClientSettings();
settings.Server = new MongoServerAddress("localhost", 27017);
MongoClient client = new MongoClient(settings);
this.db = client.GetDatabase("bigdata");
var collection = db.GetCollection<Devise>("Devise");
}
public IMongoCollection<Devise> Devise
{
get
{ return db.GetCollection<Devise>("Devise"); }
}
public Devise Add(Devise devise)
{
var collection = db.GetCollection<Devise>("Devise");
collection.InsertOne(devise);
return devise;
}
public void MongoGoNow()
{
var collection = db.GetCollection<Devise>("devise");
var result = TestFind(collection);
result.GetAwaiter().GetResult();
}
static async Task TestFind(IMongoCollection<Devise> MyCollection)
{
var filter = new BsonDocument();
var count = 0;
using (var cursor = await MyCollection.FindAsync(filter))
{
while (await cursor.MoveNextAsync())
{
var batch = cursor.Current;
foreach (var document in batch)
{
count++;
}
}
}
}
public void insertdata()
{
var devise = new Devise();
devise.parité = "euro/dollar";
Devise.InsertOne(devise);
}
}
}
Eski Mongo Sürücüsünü kullandığınız gibi görünüyor. İlk olarak, 2.0'a yükseltmeyi öneririm: https://docs.mongodb.org/ecosystem/drivers/csharp/ – pimbrouwers
Ayrıca, eklemenizi bir try/catch bloğuna sardığınızda ne olur? – pimbrouwers
Mümkün yinelenen [asp.net mvc ile mongodb veritabanını oluşturma] (http://stackoverflow.com/questions/36251180/how-to-create-a-database-in-mongodb-with-asp-net -mvc) – Saleem