C# MvcMiniProfiler不与Oracle';s连接对象
以下代码的最后一行触发异常: OracleConnection conn=新的OracleConnection(getConnectionString()) 即:C# MvcMiniProfiler不与Oracle';s连接对象,c#,oracle,database-connection,mvc-mini-profiler,dbconnection,C#,Oracle,Database Connection,Mvc Mini Profiler,Dbconnection,以下代码的最后一行触发异常: OracleConnection conn=新的OracleConnection(getConnectionString()) 即: Unable to cast object of type 'MvcMiniProfiler.Data.ProfiledDbConnection' to type 'Oracle.DataAccess.Client.OracleConnection'. 我正在使用Oracle数据提供程序。甲骨文的devArt也是如此 谢谢:)这是因
Unable to cast object of type 'MvcMiniProfiler.Data.ProfiledDbConnection' to type 'Oracle.DataAccess.Client.OracleConnection'.
我正在使用Oracle数据提供程序。甲骨文的devArt也是如此
谢谢:)这是因为您需要将其视为抽象连接,并使用基类/接口上现有的
CreateCommand
、CreateParameter
等方法。或者,如果您想避免这种混淆,像“dapper”(或任何其他ADO.NET实用程序层)之类的东西将为您省去很多痛苦
这里的原因是探查器“装饰”了连接,这反过来意味着它必须装饰其他对象并在正确的时间打开它们。这确实是以这种方式分析ADO.NET的可能方式另请参见:谢谢!但是可以使用FIll命令吗?在MVC MiniProfiler之前,应用程序正在填充数据表。基本命令对象不提供Fill方法,到目前为止,我无法实例化一个正确的DataAdapter。如果不可能的话,我将不得不做出巨大的改变,将datatable(使用扩展属性)转换为datareaders。@ClayKaboom OracleCommand也没有
Fill
方法AFAIK。。。如果您使用的是DataTable,那么这就是DataTable或apapter的工作,否?否,任何命令对象都没有Fill方法,但按照前面的方法,我可以实例化一个新的OracleDataAdapter。如何实例化一个分析过的DataAdapter?@ClayKaboom是一个很好的问题;我正在调查此事。我有DbProviderFactory,所以我可以获得CreateDataAdapter,但需要包装。正在努力。
Unable to cast object of type 'MvcMiniProfiler.Data.ProfiledDbConnection' to type 'Oracle.DataAccess.Client.OracleConnection'.