SQLDriver未使用服务器版本初始化

时间:2012-09-13 16:22:50

标签: sitefinity

我在sitefinity 4.4上收到以下错误

  

SQLDriver未使用服务器版本初始化。

我在sitefinity论坛上查了但是我找不到任何针对此问题的修复

SQLDriver未使用服务器版本初始化。

描述:

  

在执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:

  

System.InvalidOperationException:SQLDriver未使用服务器版本初始化。

来源错误:

  

在执行当前Web请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息。

堆栈追踪:

[InvalidOperationException: SQLDriver not initialized with server version.]
   OpenAccessRuntime.Relational.RelationalMetaDataBuilder.findMatchingJdbcColumn(DataObjectsExtension[] nested) +398
   OpenAccessRuntime.Relational.RelationalMetaDataBuilder.createJdbcSimpleField(FieldMetaData fmd) +204
   OpenAccessRuntime.Relational.RelationalMetaDataBuilder.createJdbcField(FieldMetaData fmd, Boolean quietParam) +125

[MetadataException: The metadata for field 'id' of class 'Telerik.Sitefinity.Metadata.Model.MetaAttribute' cannot be initialized: SQLDriver not initialized with server version.]
   DynamicModule.ns.Wrapped_OpenAccessMetaDataProvider_904ca528250e4b188a43261dbbe077b6.Initialize(String providerName, NameValueCollection config, Type managerType) +405
   Telerik.Sitefinity.Data.ManagerBase`1.InstantiateProvider(IDataProviderSettings providerSettings, Type providerType, ExceptionPolicyName policy, ManagerBase`1 manager) +1976
   Telerik.Sitefinity.Data.ManagerBase`1.InstantiateProvider(IDataProviderSettings providerSettings, ExceptionPolicyName policy, ManagerBase`1 manager) +74
   Telerik.Sitefinity.Data.ManagerBase`1.SetProvider(String providerName, String transactionName) +526

2 个答案:

答案 0 :(得分:0)

你有可能在Visual Studio 2012中运行它吗?我相信Sitefinity 4.4中的OpenAccess版本与VS2012不兼容,如果从该环境(或IIS中的asp.net 4.5)运行它,则会抛出此错误。

如果是这种情况,请尝试在VS2010中打开,然后希望您能够升级到最新版本以支持VS2012。

如果不是这种情况,我肯定会建议将此作为门票发送给Sitefinity,以便他们仔细查看您的项目!

我希望这有用!

答案 1 :(得分:0)

以防万一这对某人有帮助:

我遇到了这个错误,不是使用 Sitefinity,而是在一个相当老的应用程序中,该应用程序使用了一些同样在 Sitefinity 中使用的 Telerik 库。该应用在使用 SQL Server 2005 和 2008 R2 时运行良好,但在 2012 及更高版本上运行失败。

库中的某些内容无法识别 2008 R2 以上的任何 SQL Server 版本。 (从回溯中的线索来看,库的一部分似乎存储 SQL 版本,另一部分查看它。第一部分不识别 SQL 2012 及更高版本,因此它不存储任何内容。)< /p>

明显的含义是需要更新版本的库。我们没有编写或构建应用程序,因此很遗憾,我们无法做到这一点,直到/除非我们可以获得(或制作)使用更新库的应用程序版本。

但对于最初的问题,使用较新版本的 Sitefinity 或使用较早版本的 SQL Server 可能会奏效。

无论如何,也许这些信息可以帮助可能看到相同消息的人。