C# ormlite异步方法使用miniprofiler引发强制转换异常
使用异步ormlite方法(如下所示)时,ormlite会抛出以下错误。 无法将“StackExchange.Profiling.Data.ProfiledDbCommand”类型的对象强制转换为“System.Data.SqlClient.SqlCommand”类型 只有在使用miniprofiler注册ormlite时,才会发生此错误C# ormlite异步方法使用miniprofiler引发强制转换异常,c#,
ormlite-servicestack,mvc-mini-profiler,C#,
ormlite Servicestack,Mvc Mini Profiler,使用异步ormlite方法(如下所示)时,ormlite会抛出以下错误。 无法将“StackExchange.Profiling.Data.ProfiledDbCommand”类型的对象强制转换为“System.Data.SqlClient.SqlCommand”类型 只有在使用miniprofiler注册ormlite时,才会发生此错误 container.Register<IDbConnectionFactory>(() => new
container.Register<IDbConnectionFactory>(() =>
new OrmLiteConnectionFactory(CONNECTION_STRING_GOES_HERE, DIALECT_PROVIDER_HERE)
{
ConnectionFilter = f => new ProfiledDbConnection((DbConnection)f, MiniProfiler.Current)
},
ScopedLifestyle.Scoped
);
container.Register(()=>
新的OrmLiteConnectionFactory(这里是连接字符串,这里是方言提供者)
{
ConnectionFilter=f=>newprofileddbconnection((DbConnection)f,MiniProfiler.Current)
},
ScopedLifestyle.Scoped
);
团队成员确认问题在奥姆莱特这边。有人对此有解决方案或如何处理的建议吗
事实上,这将失败——看起来他们正在做出这样的假设
DbCommand实际上是一个SqlDbCommand(或任何其他类型)-这是
在所有ADO.NET中,这并不是一个安全的假设。它是一个
可以是任何类型
我建议他们提出一个问题,说明他们为什么要这样做
这是一个无效的假设,它试图用这个命令做什么
(可能正在尝试执行特定于SQL Server的操作)
我遇到了同样的问题。丹尼尔,你有没有收到OrmLite团队的回复?@devlord我没有。我试图在OrmLite客户支持论坛上创建一个帐户,但无论出于什么原因,我的帐户仍然不活跃。我就此事与他们联系,看看他们是否有回应。我遇到了同样的问题。丹尼尔,你有没有OrmLite团队的回音?@devlord我没有。我试图在OrmLite客户支持论坛上创建一个帐户,但无论出于何种原因,我的帐户仍然不活跃。我就此与他们进行了联系,我们将看看他们是否有回应。
container.Register<IDbConnectionFactory>(() =>
new OrmLiteConnectionFactory(CONNECTION_STRING_GOES_HERE, DIALECT_PROVIDER_HERE)
{
ConnectionFilter = f => new ProfiledDbConnection((DbConnection)f, MiniProfiler.Current)
},
ScopedLifestyle.Scoped
);