Estoy intentando acceder a SpatiaLite desde C# utilizando el proveedor de System.Data.SQLite. Cuando intento cargar la extensión SpatiaLite, siempre me sale el errorProblemas de SQLite + SpatiaLite
System.Data.SQLite.SQLiteException: SQLite error
The specified module could not be found.
, a pesar de que la DLL de SpatiaLite se ha copiado en el directorio bin. Incluso traté de especificar la ruta absoluta a la DLL, pero fue en vano.
Aquí está el código:
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();
}
...
De this link tengo la impresión de que esto debería funcionar.
Gracias de antemano
copia a ¿directorio bin de la aplicación o a la carpeta del sistema? No puedo hacer que funcione ... ¿Alguna pista? – vinayan
@vinayan por lo que recuerdo, los agregué como archivos al proyecto C# y luego establecí sus propiedades en "Copiar si es más nuevo". Entonces, sí, están en el directorio bin de la aplicación. –