-1

Google マップ API を使用して asp.net MVC4 アプリケーションを開発しています。

ポイント、ポリゴン、またはポリラインをマップに保存するために、SQL地理データ型を使用しています。

問題は、ポリゴンまたはポリラインを使用して小さなエリアマップを描画していて、正常に機能し、DB にも保存されている場合です。

しかし、大きな領域を描画すると、SQLサーバー側から次のエラーが発生します。

誰もがなぜこれが起こっているのか考えていますか?

A .NET Framework error occurred during execution of user-defined routine or aggregate "geography": 
System.FormatException: 24201: Latitude values must be between -90 and 90 degrees.
System.FormatException: 
   at Microsoft.SqlServer.Types.GeographyValidator.ValidatePoint(Double x, Double y, Nullable`1 z, Nullable`1 m)
   at Microsoft.SqlServer.Types.Validator.AddLine(Double x, Double y, Nullable`1 z, Nullable`1 m)
   at Microsoft.SqlServer.Types.ForwardingGeoDataSink.AddLine(Double x, Double y, Nullable`1 z, Nullable`1 m)
   at Microsoft.SqlServer.Types.CoordinateReversingGeoDataSink.AddLine(Double x, Double y, Nullable`1 z, Nullable`1 m)
   at Microsoft.SqlServer.Types.WellKnownTextReader.ParseLineStringText()
   at Microsoft.SqlServer.Types.WellKnownTextReader.ParsePolygonText()
   at Microsoft.SqlServer.Types.WellKnownTextReader.ParseTaggedText(OpenGisType type)
   at Microsoft.SqlServer.Types.WellKnownTextReader.Read(OpenGisType type, Int32 srid)
   at Microsoft.SqlServer.Types.SqlGeography.ParseText(OpenGisType type, SqlChars taggedText, Int32 srid)
   at Microsoft.SqlServer.Types.SqlGeography.GeographyFromText(OpenGisType type, SqlChars taggedText, Int32 srid)
4

1 に答える 1

1

94.39453125 は 90 より大きいです。

29.84064389983441 94.39453125

POLYGON から:

 'POLYGON((29.22889003019423 71.279296875,16.720385051694 78.75,29.84064389983441 94.39453125,29.22889003019423 71.279296875))' 
于 2013-06-11T13:07:36.247 に答える