coordinateSystemId für DbGeography

10

Ich muss eine große Anzahl von Adressen mithilfe des Bing Map-Dienstes, EF 5 und SQL Server 2008 geocodieren. Ich verwende den Geographie-Datentyp in SQL, der vom EF in einen DbGeography-Typ konvertiert wird.

Wenn ich ein DbGeography-Objekt erstelle, wie dieses

%Vor%

Der zweite Parameter ruft eine "coordinateSystemId" auf. Was ist das genau? Viele der Beispiele, die ich sehe, verwenden 4326. Ich bin neu in Geodaten, aber ich vermute, dass es eine Reihe gut definierter Koordinatensysteme gibt. Ich kann keine Definition finden.

    
denvercoder9 02.04.2013, 23:17
quelle

2 Antworten

4

Es ist ein wohldefinierter Raumbezugsidentifizierer - eine Zahl, die eine bestimmte Konfiguration verschiedener räumlicher Projektionen, Daten eindeutig identifiziert , Einheiten, Verkleidung usw.

    
Jake Heidt 02.04.2013, 23:21
quelle
12

Es gibt einen ganzen StackExchange für GIS, und wenn Sie, wie ich, dort als ein Coder eintauchen, der GIS nicht kennt, sind Sie auf einer Fahrt:

Ссылка

Es stellt sich heraus, dass es einen Standard im Mapping ("GIS") namens EPSG gibt, und Leute scheinen "EPSG", "EPSG SRID" und "SRID" austauschbar zu verwenden, wenn sie darauf Bezug nehmen. In den meisten GPS-Koordinaten verwenden Sie, wenn Sie über die Erde sprechen (einschließlich LatLngs, die Sie von Google Maps erhalten) die EPSG SRID 4326, und wenn Sie über eine flache 2D-Karte sprechen (wie eine Google Custom Map) , Sie sprechen über EPSG SRID 3857.

Es gibt auch einen Malakey über WGS, den du ignorieren kannst.

.Net sucht nur nach der tatsächlichen numerischen ID in der EPSG-SRID. Es wäre super hilfreich, wenn dies nur Konstanten auf DbGeography wären wie:

%Vor%

Aber kein solches Glück.

Wie auch immer, ziehen Sie in Erwägung, sie in Ihrer Anwendung zu Konstanten zu machen, anstatt nur eine undokumentierte magische Zahl zu werfen. Unsere kleine Helferklasse:

%Vor%     
Chris Moschini 29.08.2014 07:08
quelle