HangfireIO/Hangfire

System.Globalization.CultureNotFoundException. Culture is not supported.

Open

#964 创建于 2017年8月11日

在 GitHub 查看
 (1 评论) (0 反应) (0 负责人)C# (10,068 star) (1,748 fork)batch import
a: corehelp wanted

描述

I'm using:

  • HangFire.Core v1.4.6
  • Hangfire.SqlServer v1.4.6
  • Windows 10 x64
  • IIS 8.5 (not important probably but still)

Suddenly I got failed jobs containing next exception:

System.Globalization.CultureNotFoundException

Culture is not supported. Parameter name: name en-SI is an invalid culture identifier.

System.Globalization.CultureNotFoundException: Culture is not supported.
Parameter name: name
en-SI is an invalid culture identifier.
   at System.Globalization.CultureInfo..ctor(String name, Boolean useUserOverride)
   at Hangfire.CaptureCultureAttribute.OnPerforming(PerformingContext filterContext)
   at Hangfire.Server.BackgroundJobPerformer.InvokePerformFilter(IServerFilter filter, PerformingContext preContext, Func`1 continuation)

Hangfire was using two servers if that makes any difference. After deleting all Hangfire tables it now works, but still don't know why this happened.

But why does CultureNotFoundException occurs? Thread is always running under valid culturename. I found next post: https://stackoverflow.com/questions/38690850/disable-preservecultureattribute-in-hangfire

贡献者指南