NHibernate自定义MsSql2008Dialect驱动程序
我最后一个问题被关闭,因为它被解释为“宽泛和模糊”,所以我会尝试清除事情。NHibernate自定义MsSql2008Dialect驱动程序
我需要创建一个自定义驱动程序NHibernate做一些东西(不重要的职位),但我不知道从哪里开始。 我有我在互联网上看到了一个代码,但我不知道如何去完成它:
public class teste : NHibernate.Driver.ReflectionBasedDriver
{
public teste()
:base()
{
}
我的问题是在:基础()的一部分,我不知道我需要把那里 !
感谢
P.S->看在上帝的份上,这不是一个重复的职位,因为最后一个被关闭!
这个问题注定是因为“我想做的事”并不能真正帮助我们。如果NHibernate需要一个程序集,但需要使用另一个程序集,则可以使用ReflectionBasedDriver。
例如,如果我想使用单声道源码(例如NHibernate预计SQLite.NET),那么我会用: -
public MyClass() : base("Mono.Data.Sqlite",
"Mono.Data.Sqlite.SqliteConnection", "Mono.Data.Sqlite.SqliteCommand")
{
public override bool UseNamedPrefixInSql
{
get { return true; }
}
public override bool UseNamedPrefixInParameter
{
get { return true; }
}
public override string NamedPrefix
{
get { return "@"; }
}
}
我强烈怀疑你是在实际上在此之后:
public class MyDialect : NHibernate.Dialect.MsSql2008Dialect
{
}
由于自定义方言允许您指定自己的配置。
非常感谢Rippo。不,我不能使用方言,因为我想做的事不能通过Dialect完成(拦截LINQ调用,更改sql代码)。你认为它会和linq一起工作吗?谢谢 ! – Leonardo 2012-04-17 17:52:57
拦截应该通过拦截器完成NOT ReflectionBasedDriver – Rippo 2012-04-18 07:42:47
顺便说一句你已经有了这个答案。 http://stackoverflow.com/questions/9933002/dialect-driver-every-select-i-perform-add-withnolock – Rippo 2012-04-18 07:45:23
你能定义一些东西吗? – Rippo 2012-04-17 17:08:59
您应该先看其他驱动程序。这就是开源的目的。 – 2012-04-17 21:43:16