Hangfire: метод UseSqlServerStorage отсутствует

Я пытаюсь установить HangFire для проекта кода ASP.NET.

Когда я буду следовать официальному документу ( https://www.hangfire.io/blog/2016/07/16/hangfire-1.6.0.html) или другим ссылочным ресурсам ( http://www.dotnetjalps.com/2017/04/aspnet-core-hangfire-integation.html), это звучит ясно. Добавь это

services.AddHangfire(config=>config.UseSqlServerStorage(Configuration.GetConnectionString("MyConnectionString")));

Но это не работает. Этот метод расширения не существует. Я что-то пропустил?

2 ответа

Решение

Итак, я нашел ответ..

Мне пришлось удалить пакет HangFire, закрыть решение Visual Studio 2017 и очистить папки obj и bin.

Затем я снова открываю его, добавляю пакеты HangFire.AspNetCore и HangFire.SQLServer. Тогда это работает.

Возможно, вам не хватает пакета HangFire.SqlServer. Как только я добавил это к моему проекту, это сработало. Вы можете найти самую последнюю версию пакета здесь.

https://www.nuget.org/packages/HangFire.SqlServer/

У меня была похожая проблема, и она была вызвана тем, что у меня уже была глобальная конфигурация в моем автозагрузке, и она ссылалась на System.Web.Http.GlobalConfiguration. Теперь я думал, что Hangfire добавит этот UseSqlServerStorage() в качестве метода расширения, как, например, Swagger, но вместо этого Hangfire приносит свою собственную версию этого файла.

Ссылка на него напрямую работала на меня:

Hangfire.GlobalConfiguration.Configuration.UseSqlServerStorage("connection_string");
Другие вопросы по тегам