Crítical do NHibernate 3.0 Cookbook

3 views
Skip to first unread message

Ricardo Peres

unread,
Nov 22, 2010, 6:25:25 AM11/22/10
to NHibernate Portugal

Pedro Sousa

unread,
Nov 22, 2010, 7:34:39 AM11/22/10
to nh...@googlegroups.com
Óptima review. E vem mesmo a calhar, pois decidi neste fds actualizar a versão do meu projecto actual para o NH 3 :)

Só uma questão. Referes que têm exemplos das Spatial Extensions do NH. Mas é alguma coisa de jeito ou são só exemplos básicos?
 

 
2010/11/22 Ricardo Peres <rjp...@gmail.com>



--
Pedro Sousa

Ricardo Peres

unread,
Nov 22, 2010, 7:41:24 AM11/22/10
to NHibernate Portugal
Pedro,

Pouca coisa, infelizmente, apenas alguns conceitos teóricos e um
exemplo simples:

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="Eg.Spatial" namespace="Eg.Spatial">
<typedef name="Geometry"
class="NHibernate.Spatial.Type.GeometryType, NHibernate.Spatial">
<param name="srid">4269</param>
<param name="subtype">GEOMETRY</param>
</typedef>
<class name="StatePart" table="StatePart" mutable="false" schema-
action="none">
<id name="Id" column="ID">
<generator class="assigned" />
</id>
<property name="Name" column="NAME"/>
<property name="Area" column="AREA"/>
<property name="Perimeter" column="PERIMETER"/>
<property name="Geometry" type="Geometry" column="geom" />
</class>
</hibernate-mapping>

static void Main(string[] args)
{
XmlConfigurator.Configure();
var log = LogManager.GetLogger(typeof (Program));
NHibernateProfiler.Initialize();
var cfg = new Configuration().Configure();
cfg.AddAuxiliaryDatabaseObject(new
SpatialAuxiliaryDatabaseObject(cfg));
var sessionFactory = cfg.BuildSessionFactory();
//Houston, TX
var houstonTX = new Point(-95.383056, 29.762778);
using (var session = sessionFactory.OpenSession())
using (var tx = session.BeginTransaction())
{
var query =
session.CreateCriteria<StatePart>().Add(SpatialExpression.Contains("Geometry",
houstonTX));
var part = query.UniqueResult<StatePart>();
if (part == null)
{
log.InfoFormat("Houston, we have a problem.");
}
else
{
log.InfoFormat("Houston is in {0}", part.Name);
}
tx.Commit();
}
}



On Nov 22, 12:34 pm, Pedro Sousa <pedro.sou...@gmail.com> wrote:
> Óptima review. E vem mesmo a calhar, pois decidi neste fds actualizar a
> versão do meu projecto actual para o NH 3 :)
>
> Só uma questão. Referes que têm exemplos das Spatial Extensions do NH. Mas é
> alguma coisa de jeito ou são só exemplos básicos?
>
> 2010/11/22 Ricardo Peres <rjpe...@gmail.com>
>
> > Para quem estiver interessado no livro:
>
> >http://pontonetpt.org/blogs/ricardoperes/archive/2010/11/18/cr-237-ti...
Reply all
Reply to author
Forward
0 new messages