为什么此数据库更新仅在一台客户端PC上什么都不做,而在其他几台PC上也能正常工作?

问题描述

我有一个桌面项目,使用以下代码将数据保存到sql Server数据库中:

         this.Validate();

         this.PropostasCabBindingSource.EndEdit();

         this.PropostasLinhasBindingSource.EndEdit();

         this.tableAdapterManager.Updateall(DBEmpresa);

除了一个客户端外,它在多个客户端上都可以正常工作。在该客户端上,它没有例外,但不对数据库表(PropostasCab)进行任何更改。该客户端与网络上的其他客户端具有相同的.NET(v4.6.2),相同的sql Server版本(v12.0.2569),相同的sql Server 2005向后兼容性。

我尝试重新启动我提到的服务,重新安装sql Server 2005向后兼容,什么也没有。

有什么想法吗?一些sql Server冲突?

解决方法

我发现了问题。

该特定PC的区域格式为“ us-US”,而不是“ pt-PT”。 由于某些货币格式设置为“美国”,因此数据库正在回退

现在我更改了CultureInfo:

 CultureInfo culture = CultureInfo.CreateSpecificCulture("pt-PT");
 Thread.CurrentThread.CurrentCulture = culture;
 Thread.CurrentThread.CurrentUICulture = culture;

工作正常。

谢谢。