我今天一直在尝试使用Hangfire。它看起来很酷。不幸的是,我的环境不是最新的。我有VS 2010,.Net 4.0和SQLServer2005。我创建了一个新项目,并安装了Hangfire,Hangfire.Core,Hangfire.NET40.SQLServer,OWIN,还有谁知道。该项目现在没有错误。所有引用均已解决。

我从here at StackOverflow那里获得了很多见识,并尝试按照说明配置启动类。

Public Sub Configuration(app As IAppBuilder)
            app.UseHangfire(
                Sub(config)
                    ' Basic setup required to process background jobs.
                    config.UseSqlServerStorage("SQLServer")
                    config.UseServer()
                End Sub)
        End Sub


我还创建了一个新的SQL用户和空数据库供Hangfire使用。在Web.Config文件中,我添加了以下连接字符串:

<add name="SQLServer"
     connectionString="Server=SQLServer;Database=Hangfire;User Id=HangfireAPI;Password=********;" />


我认为我已经涵盖了所有基础,但是在运行时,对UseSqlServerStorage的调用返回错误:

Locating source for 'c:\_oss\common-logging\src\Common.Logging.Core\Logging\Simple\NoOpLogger.cs'. Checksum: MD5 {7d f3 26 f7 66 5a 52 54 72 fe 23 b9 2 c1 cd 50}
The file 'c:\_oss\common-logging\src\Common.Logging.Core\Logging\Simple\NoOpLogger.cs' does not exist.
Looking in script documents for 'c:\_oss\common-logging\src\Common.Logging.Core\Logging\Simple\NoOpLogger.cs'...
Looking in the projects for 'c:\_oss\common-logging\src\Common.Logging.Core\Logging\Simple\NoOpLogger.cs'.
The file was not found in a project.


我没有成功搜索文件'NoOpLogger.cs'。由于我的项目是VB,所以我不确定为什么或如何实现。

感谢您对此的帮助。

最佳答案

Hangfire使用的功能与VS 2010和SQL 2005不兼容。请参阅此StackOverflow article,它标识了核心问题。 DateTime2在SQL 2005中不是有效的类型!

关于c# - Hangfire安装/启动,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26308199/

10-13 09:02