我想從C#使用System.Data.SQLite提供程序訪問SpatiaLite。當我嘗試加載SpatiaLite擴展,我總是得到SQLite + SpatiaLite問題
System.Data.SQLite.SQLiteException: SQLite error
The specified module could not be found.
錯誤,即使spatialite的DLL已經被複制到bin目錄。我甚至嘗試指定dll的絕對路徑,但無濟於事。
下面的代碼:
string connectionString = @"Data Source=D:\MyStuff\projects\OsmUtils\trunk\Data\Samples\DB\osm.sqlite";
using (SQLiteConnection connection = new SQLiteConnection (connectionString))
{
connection.Open();
using (SQLiteCommand command = connection.CreateCommand())
{
command.CommandText = @"SELECT load_extension('libspatialite-1.dll');";
command.ExecuteScalar();
}
...
從this link給我的感覺這應該工作。
在此先感謝
副本應用程序的bin目錄或系統文件夾?我無法得到它的工作..任何線索? – vinayan 2012-11-02 07:28:56
從我記得的@vinayan中,我將它們作爲文件添加到C#項目,然後將它們的屬性設置爲「Copy if newer」。所以是的,他們在應用程序的bin目錄中。 – 2012-11-02 08:13:30