Kri*_*Ahl 5 nhibernate hql fluent-nhibernate
我希望能够将一个名为"recent_date"的自定义函数作为我的HQL的一部分.像这样:[Date] >= recent_date()
我创建了一个新的方言,继承自MsSql2000Dialect并为我的配置指定了方言.
public class NordicMsSql2000Dialect : MsSql2000Dialect
{
public NordicMsSql2000Dialect()
{
RegisterFunction(
"recent_date",
new SQLFunctionTemplate(
NHibernateUtil.Date,
"dateadd(day, -15, getdate())"
)
);
}
}
var configuration = Fluently.Configure()
.Database(
MsSqlConfiguration.MsSql2000
.ConnectionString(c => .... )
.Cache(c => c.UseQueryCache().ProviderClass<HashtableCacheProvider>())
.Dialect<NordicMsSql2000Dialect>()
)
.Mappings(m => ....)
.BuildConfiguration();
Run Code Online (Sandbox Code Playgroud)
调用时recent_date()我得到以下错误:
System.Data.SqlClient.SqlException:'recent_date'不是可识别的函数名称
我正在使用where语句中的HasMany映射,如下所示.
HasMany(x => x.RecentValues)
.Access.CamelCaseField(Prefix.Underscore)
.Cascade.SaveUpdate()
.Where("Date >= recent_date()");
Run Code Online (Sandbox Code Playgroud)
我在这里错过了什么?
| 归档时间: |
|
| 查看次数: |
6203 次 |
| 最近记录: |