I’m having a problem working in SharpDevelop using NHibernate and SQLite. I’ve seen people having my exact problem in Visual Studio 2010 working with .NET 4.0, but I’m working in .NET 3.5 and I’ve never had these problems earlier.
I’m doing some unit testing and whenever I’m trying to open a connection to the DB through NHibernate the following exception is thrown:
SetUp : StructureMap.StructureMapException : StructureMap Exception Code: 207
Internal exception while creating Instance '55c9fa8e-fa79-4698-8d06-7e305e73ac49' of PluginType SimplEconomics.Data.NHibernate.UnitOfWork.INHibernateUnitOfWork. Check the inner exception for more details.
----> FluentNHibernate.Cfg.FluentConfigurationException : An invalid or incomplete configuration was used while creating a SessionFactory. Check PotentialReasons collection, and InnerException for more detail.
----> NHibernate.HibernateException : Could not create the driver from NHibernate.Driver.SQLite20Driver, NHibernate, Version=2.1.2.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4.
----> System.Reflection.TargetInvocationException : Exception has been thrown by the target of an invocation.
----> NHibernate.HibernateException : The IDbCommand and IDbConnection implementation in the assembly System.Data.SQLite could not be found. Ensure that the assembly System.Data.SQLite is located in the application directory or in the Global Assembly Cache. If the assembly is in the GAC, use <qualifyAssembly/> element in the application configuration file to specify the full name of the assembly. - d:\Builds\FluentNH\src\FluentNHibernate\Cfg\FluentConfiguration.cs:93
I think it’s the last line that’s most specific and the weird thing is that I first had my project in .NET 4.0 (using the latest version of Sharpdevelop, 4) and with that I could understand that there were some issue with the latest SQLite release, but this is with .NET 3.5, I’ve used it before.
Anyone have any ideas?
Here’s my spec btw:
- SharpDevelop 3.2.1
- SQLite 1.0.74.0
- NHibernate 2.1.2.4000
- .NET 4.0 installed, and 3.5
- Windows Vista (if that matters)
This is driving me completely insane…
EDIT:
I should add that I have tried the following solution without success:
A similar stackoverflow-thread
Make sure your SQLite DLL is copied to your /bin directory. Also, be warned, that SQLite is not Win OS agnostic and there are both 32-bit and 64-bit versions available and use the appropriate version on the OS that it’s used on. SQLite home.