2

SQL ServerのテーブルにGeography列があり、特定のジオメトリタイプ、たとえばジオメトリタイプが「Point」であるすべてのレコードで行をフィルタリングしたい

SQLクエリは次のようになります

select * from GeometryTable g where g.Geography.STGeometryType() = 'Point'

そのための基準を作成するにはどうすればよいですか?基準は他の基準と一緒に使用されます

criteria.Add(Restrictions.Add(<Geography.STGeometryType()>, some.Value)

ありがとう

4

1 に答える 1

1

次の構文を使用します。

var criteria = session.CreateCriteria<Geometry>();
criteria.Add
(
  Expression.Sql(" {alias}.[Geography].STGeometryType() = ? "
  , "Point"                               // a place for your parameter
  , NHibernate.NHibernateUtil.String)
);
var list = criteria.List<Geometry>();
于 2013-01-26T06:31:31.243 に答える