我有一个运行良好的 owin 文化中间件。
它只是根据 url 改变文化。这在 4.5.* 中完美运行。现在,当 runtiome 更改为 4.6.1 时,文化不再保留,因此它不起作用。
我可以在一个非常简单的解决方案中重现它,该解决方案只有这个中间件来模拟文化变化
public class CultureMiddleware : OwinMiddleware
{
public CultureMiddleware(OwinMiddleware next)
: base(next)
{
}
public override async Task Invoke(IOwinContext context)
{
var culture = new CultureInfo("es-ES");
Thread.CurrentThread.CurrentCulture = culture;
Thread.CurrentThread.CurrentUICulture = culture;
CultureInfo.CurrentCulture = culture;
CultureInfo.CurrentUICulture = culture;
await Next.Invoke(context);
}
}
我将中间件附加到它执行的管道但是当我调用一个动作时控制器没有文化(就像它在.net 4.5.1中一样)
我已经在这里发布了,但是支持真的很慢。每两周一个答案,然后似乎他们还没有尝试过他们写的东西:-(
https://connect.microsoft.com/VisualStudio/feedback/details/2455357