Jeg har ikke hørt om nogen størrelsesbegrænsninger på LINESTRING (bestemt ikke så kort som 567 point).
Jeg har lige prøvet et eksempel
DECLARE @geom GEOGRAPHY
SET @geom = GEOGRAPHY::STGeomFromText(
'LINESTRING (142.98873903132778 -11.006193013241768
, 142.9891970000001 -11.005916999999954
-- SNIP 1,119 points
, 142.04362479801711 -11.629451936538608 )', 4326)
SELECT @geom, @geom.STNumPoints()
hvilket fungerede fint (opretter LINESTRING og tæller 1.122 point).
Mislykkes dit eksempel med NOGEN 567 point - eller bare et bestemt sæt point (kan du dele dem med os?). Jeg gætter på, om dit 568. punkt gør din GEOGRAPHY-instans større end en halvkugle? For eksempel, hvis jeg ændrer mit eksempel ved at tilføje endnu et punkt (0,0), hvilket tvinger GEOGRAFI til at være for stort:
DECLARE @geom GEOGRAPHY
SET @geom = GEOGRAPHY::STGeomFromText(
'LINESTRING (142.98873903132778 -11.006193013241768
, 142.9891970000001 -11.005916999999954
-- SNIP 1,119 points
, 142.04362479801711 -11.629451936538608
, 0 0 )', 4326) -- ADDED ANOTHER POINT !
SELECT @geom, @geom.STNumPoints()
Jeg får ArgumentException 24205:Det angivne input repræsenterer ikke en gyldig geografiforekomst, fordi den overskrider en enkelt halvkugle. Hver geografiforekomst skal passe inde i en enkelt halvkugle. En almindelig årsag til denne fejl er, at en polygon har den forkerte ringretning. hvilket åbenbart ikke er nøjagtig samme fejl som dig - men jeg tænkte, at jeg ville hæve det alligevel [Spring til OPDATERING til sidst for en bedre idé]
Mit andet spørgsmål til dig er:virker det med GEOMETRY-datatypen? For eksempel. hvis jeg ændrer mit "brud" eksempel ovenfor til at bruge GEOMETRY så fungerer det fint:
DECLARE @geom GEOMETRY -- using GEOMETRY type instead
SET @geom = GEOMETRY::STGeomFromText(
'LINESTRING (142.98873903132778 -11.006193013241768
, 142.9891970000001 -11.005916999999954
-- SNIP 1,119 points
, 142.04362479801711 -11.629451936538608
, 0 0 )', 4326) -- THIS POINT BREAKS GEOGRAPHY but works now!
SELECT @geom, @geom.STNumPoints()
Hvis du kan skrive nogle flere detaljer om dit specifikke problem, kan det tyde på det underliggende problem. Kan du også tilføje, om du indtaster punkterne i SQL Management Studio eller via kode (er det C# og SQL datatyper assembly)? Hvad er den fulde tekst af den fejlmeddelelse, du modtager (hvis der er mere end det, du citerede ovenfor - se min fejl).
Men det korte svar er "Jeg tror ikke, der er en grænse på 567 point".
OPDATERING: Eds indlæg indeholder den nøjagtige fejl du får (System.ArgumentException:24200) - så hvis du i stedet kan få dine data til at fungere i GEOMETRY, kan dette være et forsøg værd: