c# - NHibernate.Spatial and Sql 2008 Geography type
sql-server-2008 (2)
Actualmente estoy trabajando en un proyecto donde tengo que lidiar con los tipos de geografía del servidor sql 2008. Como gran parte de los proyectos usan NHibernate como ORM, me pregunto cuánto trabajo será usar / extender NHibernate.Spatial con este tipo (hasta donde puedo ver, Nh Spatial solo admite el tipo de geometría). Por cierto. ¿Hay algún otro .NET ORM que soporte este tipo de sql? Gracias
No sé específicamente sobre espacial, pero siempre puede extender NHibernate para tratar sus tipos personalizados, lo cual es bastante sencillo (consulte NHibernate Custom Mapping Types ), pero la cuestión es que debe explicar cómo tratar los tipos de geografía a NHibernate ( ver el espacio de nombres NHibernate.Type) teling NH cómo convertir el valor de ida y vuelta a SQL.
Puede que no sea la cosa más fácil del mundo, pero se puede hacer, muchas personas pueden ayudarlo en los viajes nocturnos y definitivamente aprenderá mucho sobre el funcionamiento interno de un OR / M.
Pregunté lo mismo en NHUsers en enero. NHSpatial tiene soporte limitado para tipos de geografía. Verifique el hilo en NHUsers a continuación, puede "utilizar" tipos de Geometría para algunas aplicaciones de geografía.
También vea el enlace que Ricardo colocó en el grupo al blog de Isaac Kunen que da un ejemplo interesante del problema del vecino más cercano en SQL.
Así que, básicamente, la respuesta: Ningún NHSpatial no es compatible con Geografía, pero puede usar los tipos de Geometría para algunos problemas básicos de geografía (por ejemplo, la distancia entre dos puntos). Pero es mejor ejecutar una consulta SQL nativa para obtener toda la potencia de los tipos de geografía de SQL Server 2008.