hangfire 创建项目(三)

创建HangFireDashboard

(一)创建MVC项目,并引入Hangfire

工具->Nuget包管理器->程序包管理器控制台

[plain]  view plain  copy
  1. Install-Package Hangfire.Core  
  2. Install-Package Hangfire.MySqlStorage -Version 1.0.5  

注意:hangfire支持.NETFramework,Version=v4.6及以上版本,所以创建项目时选好框架。

这里我是用MySql作为Hangfire的Storage。Hangfire 官方在免费版中只提供了 SqlServer 接入的支持,在收费版多一个 Redis。需要 MongoDB、SqlServer 、PostgreSql、SQLite 等其他 Storages 的可以自己寻找第三方的开源项目,这里有一个官方推荐的扩展清单,清单中列出了一些其他种类的 Storages。

(二)修改Startup.cs

using Hangfire;
using Hangfire.MySql;
using Microsoft.Owin;
using Owin;

[assembly: OwinStartupAttribute(typeof(HangFireDashboard.Startup))]
namespace HangFireDashboard
{
    public partial class Startup {
        public void Configuration(IAppBuilder app) {
            //指定Hangfire使用内存存储后台任务信息
            var storage = new MySqlStorage("gyy_hangfireservice");
            GlobalConfiguration.Configuration.UseStorage(storage);
            //启用HangfireServer这个中间件(它会自动释放)
            app.UseHangfireServer();
            //启用Hangfire的仪表盘(可以看到任务的状态,进度等信息)
            app.UseHangfireDashboard();
        }
    }
}

(三)、编译发布项目即可。浏览器输入localhost:8080/hangfire。端口号自行设置

运行结果如下:

hangfire 创建项目(三)_第1张图片


注意:只是实现了本地服务器打开,如果需要其他客户端打开需要配置授权。

另外,Mysql作为数据库存储,自动生成的表结构有问题,需要手动删除后重新生成。hangfire-Mysql数据库创建如下:

https://pan.baidu.com/s/1L4uY7ZcOYH-8MkCZ0Qb7DA



你可能感兴趣的:(.net,框架,Hangfire,Mysql)