Формат строки инициализации не соответствует спецификации, начиная с индекса 0 на сервисах. AddHangfire - PullRequest
0 голосов
/ 27 сентября 2018

Я пытаюсь интегрировать Hangfire в свое приложение с помощью документации на их сайте, однако, я получаю эту ошибку при попытке запустить приложение

System.ArgumentException: 'Format of the initialization string does not conform to specification starting at index 0.'

наэта строка кода в моем файле Startup.cs:

 services.AddHangfire(x => x.UseSqlServerStorage("HangfireDb"));

Сначала я добавил Db, используя Entity Framework Code, и вот как выглядят эти файлы:

public partial class HangfireDbContext : DbContext
{
    public HangfireDbContext(DbContextOptions<HangfireDbContext> options) : base(options) { }
}

ИспользованиеDBFactory, который вызывает строку подключения, хранящуюся в файле appsettings.

public class HangfireDbContextFactory : IDesignTimeDbContextFactory<HangfireDbContext>
{
    public HangfireDbContext CreateDbContext(string[] args)
    {
        var basePath = AppContext.BaseDirectory;
        var environmentName = Environment.GetEnvironmentVariable(DalConstants.HostingEnvironment);

        return Create(basePath, environmentName);
    }

    private HangfireDbContext Create(string basePath, string environmentName)
    {
        IConfigurationRoot config = new ConfigurationBuilder()
        .SetBasePath(basePath)
        .AddJsonFile(DalConstants.AppSettingsName)
        .Build();

        string connectionString = config.GetConnectionString(DalConstants.HangfireDb);

        if (string.IsNullOrWhiteSpace(connectionString))
        {
            throw new InvalidOperationException($"Could not find a connection string named '{DalConstants.HangfireDb}'.");
        }

        var optionsBuilder = new DbContextOptionsBuilder<HangfireDbContext>();
        optionsBuilder.UseSqlServer(connectionString);

        return new HangfireDbContext(optionsBuilder.Options);
    }
}

appsettings.json

"ConnectionStrings": {

"HangfireDb": "Server=serverName;User Id=userName;password=userPassword;Database=HangfireDb;MultipleActiveResultSets=true"
 },

Я запустил миграцию, и база данных успешно создана, и проблем там нет.Есть что-то, чего я здесь не хватает?Благодарю.

...