一个应用程序使用逗号,在发布后使​​用全值/句点作为双值

时间:2017-12-06 08:20:41

标签: c# asp.net-mvc iis globalization cultureinfo

我有2个ASP MVC应用程序位于同一台服务器上,位于不同的应用程序池中。一个是面向公众,另一个是内部网络的用户。

它们都查询同一个数据库并在相同的用户配置文件下运行。

在我的计算机上调试应用程序时,一切都井然有序,但是当运行它们发布到服务器时,当显示double值时,面向公众的应用程序始终使用逗号,而私有应用程序使用完全停止(应该如此)。

据我所知,我没有专门针对此设置任何文化设置,我只为私人网站上的日期设置了自定义过滤器:

public class CustomDateTimeBinder : IModelBinder
{
    public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
    {
        var value = bindingContext.ValueProvider.GetValue(bindingContext.ModelName);
        CultureInfo culture = new CultureInfo("en-GB"); // dd/MM/yyyy
        var date = value.ConvertTo(typeof(DateTime), culture);
        return date;
    }
}

这是我能想到的最接近的东西,但我不认为这是差异的原因。

我将从哪里开始寻找导致这种差异的原因?似乎问题必须在服务器上,因为在我的电脑上从VS进行调试时,它会根据需要使用.

必须格式化每一个双as suggested here似乎很荒谬。

0 个答案:

没有答案