临河任务调度
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

MongoDbFixture.cs 847B

před 4 měsíci
12345678910111213141516171819202122232425262728293031323334
  1. using System;
  2. using EphemeralMongo;
  3. namespace Himp.TaskScheduling.MongoDB;
  4. public class MongoDbFixture : IDisposable
  5. {
  6. public readonly static IMongoRunner MongoDbRunner;
  7. static MongoDbFixture()
  8. {
  9. MongoDbRunner = MongoRunner.Run(new MongoRunnerOptions
  10. {
  11. UseSingleNodeReplicaSet = true
  12. });
  13. }
  14. public static string GetRandomConnectionString()
  15. {
  16. return GetConnectionString("Db_" + Guid.NewGuid().ToString("N"));
  17. }
  18. public static string GetConnectionString(string databaseName)
  19. {
  20. var stringArray = MongoDbRunner.ConnectionString.Split('?');
  21. var connectionString = stringArray[0].EnsureEndsWith('/') + databaseName + "/?" + stringArray[1];
  22. return connectionString;
  23. }
  24. public void Dispose()
  25. {
  26. MongoDbRunner?.Dispose();
  27. }
  28. }