在HQL中转义冒号(使用geography :: STGeomFromWKB(...))

时间:2012-04-26 07:15:33

标签: c# sql-server nhibernate fluent-nhibernate

我希望有人可以给我一个与流利的NHibernate用法相关的提示。由于冒号被视为参数,我无法使以下代码块工作。有没有办法逃脱它们?

_session.CreateSQLQuery(
  "insert into disposal_site"
  + "(geom, description) "
  + "VALUES (geography::STGeomFromWKB(:wkb,4326), :description)")
  .SetBinary("wkb", entity.wkb)
  .SetString("description", entity.description)
  .ExecuteUpdate()

非常感谢任何帮助!

祝你好运, 马丁

1 个答案:

答案 0 :(得分:1)

可能的解决方案(未尝试)将使用没有冒号的名称注册您的函数。

您可以通过继承相应的方言(例如MsSql2008Dialect)并在构造函数中使用RegisterFunction来实现。