我準備好從一個php mvc應用程序到asp.net mvc(使用大量的JavaScript和谷歌地圖)的端口。該應用程序在我的開發機器上運行得很好(Win 7 + IIS 7)。但問題始於生產服務器。由於某種原因,我有一個JavaScript文件,當我從我的生產服務器上使用它時,它不能很好地工作。 即我有我的觀點,我加載所有的數據從數據庫和之後,我把它放在一個名爲global_sites_am的全局變量數組。數組中的每一行都包含緯度,縱向和名稱等屬性....之後,此數組將從名爲maps.js的js文件中獲得。全局Javascript變量的值在momemt得到它是錯誤的
var position = new google.maps.LatLng(global_sites_am[i].latitud,global_sites_am[i].longitud);
addMarker(position,global_sites_am[i].name,i);
出於某種原因,這一段代碼做工精細自己的計算機上,但它沒有當我已經安裝了生產服務器上的應用程序。
I.E.在開發機:global_sites_am[0].latitud = 45,6789566 and global_sites_am[i].longitud=72,69452015
但是生產機器上:global_sites_am[0].latitud = 45 and global_sites_am[i].longitud=72
什麼,我做錯了什麼?
更新:這是我如何從數據庫加載值的JavaScript文件:
global_sites_am[count]=new Object();
global_sites_am[count].name='<%=site.Name%>';
global_sites_am[count].latitud=<%=site.Latitud%>;
global_sites_am[count].longitud=<%=site.Longitud%>;
這是我的屬性之一:從Chrome中
[EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
[DataMemberAttribute()]
public global::System.Double Latitud
{
get
{
return _Latitud;
}
set
{
OnLatitudChanging(value);
ReportPropertyChanging("Latitud");
_Latitud = StructuralObject.SetValidValue(value);
ReportPropertyChanged("Latitud");
OnLatitudChanged();
}
}
一些調試信息:http://oi49.tinypic.com/2j4q7p4.jpg。在圖片中你會看到目前加載到頁面的值是正確的,但是現在閱讀它們是錯誤的。
看起來它越來越從錯誤類型數據庫。沿着這條線的某處,花車被讀作int。 – QuentinUK 2013-02-11 15:13:30
我猜想數據庫正在使用不同的文化來進行數字格式化。這可能會導致精度損失。 – 2013-02-11 15:45:21
最後我想我發現了什麼問題。 在版本中,什麼運行良好的數字加載爲 global_sites_am [count] .latitud = -44.365644; global_sites_am [count] .longitud = -73.8886; 在錯誤的版本號碼加載像44,3635644。 我該如何解決這個問題? – Rolando 2013-02-11 15:46:08