Это моя композиция докера:
Код: Выделить всё
services:
mongo-db:
container_name: mongo-db
image: mongo
restart: always
ports:
- "27017:27017"
Код: Выделить всё
public class Order
{
public string Id { get; set; }
public string Name { get; set; }
}
public class OrdersDbContext(DbContextOptions options) : DbContext(options)
{
public DbSet Orders { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity().ToCollection("orders");
}
}
Код: Выделить всё
var order = new Order
{
Id = Helpers.GetNewId(),
Name = "Some order"
};
var mongoClient = new MongoClient("mongodb://localhost:27017");
var dbContextOptions =
new DbContextOptionsBuilder().UseMongoDB(mongoClient, "orders");
var ordersDb = new OrdersDbContext(dbContextOptions.Options);
ordersDb.Orders.Add(order);
ordersDb.SaveChanges();
Необработанное исключение. MongoDB.Driver.MongoInсовместимыйDriverException: сервер по адресу localhost:27017 сообщает о версии 4, но для этой версии драйвера требуется как минимум 7 (MongoDB 4.0.0).
в MongoDB.Driver.MongoInсовместимыйDriverException .ThrowIfNotSupported(описание ClusterDescription)
at MongoDB.Driver.Core.Clusters.Cluster.SelectServerHelper.SelectServer()
в MongoDB.Driver.Core.Clusters.Cluster.SelectServer (селектор IServerSelector, CancellationToken cancelToken)
в MongoDB.Driver.Core.Clusters.IClusterExtensions.SelectServerAndPinIfNeeded(кластер IClusterInternal, сеанс ICoreSessionHandle, селектор IServerSelector, IReadOnlyCollection
Код: Выделить всё
1 deprioritizedServers, CancellationToken cancellationToken) at MongoDB.Driver.Core.Bindings.WritableServerBinding.GetWriteChannelSource(IReadOnlyCollectionat MongoDB.Driver.Core.Bindings.WritableServerBinding.GetWriteChannelSource(CancellationToken cancelToken)
at MongoDB.Driver.Core.Bindings.ReadWriteBindingHandle.GetWriteChannelSource(CancellationToken cancelToken)
Для меня это не имеет смысла, поскольку фактическая версия mongodb в контейнере — 8.0 .3. Есть идеи, как это исправить?
Подробнее здесь: https://stackoverflow.com/questions/792 ... ersion-4-b
Мобильная версия