System.BadImageFormatException a correre esempi ServiceStack.
-
09-10-2019 - |
Domanda
Sto cercando di eseguire ServiceStack progetti Esempi. Quando eseguo il client Web sto ottenendo il seguente errore:
{System.BadImageFormatException: An attempt was made to load a program with an
incorrect format. (Exception from HRESULT: 0x8007000B)
at Mono.Data.Sqlite.UnsafeNativeMethods.sqlite3_open_v2(Byte[] utf8Filename,
IntPtr& db, Int32 flags, IntPtr vfs)
at Mono.Data.Sqlite.SQLite3.Open(String strFilename, SQLiteOpenFlagsEnum
flags, Int32 maxPoolSize, Boolean usePool)
at Mono.Data.Sqlite.SqliteConnection.Open()
at ServiceStack.OrmLite.OrmLiteConnection.Open()
at ServiceStack.OrmLite.OrmLiteConnectionFactory.OpenDbConnection()
at ServiceStack.Examples.ServiceInterface.Support.ConfigureDatabase
.Init(IDbConnectionFactory connectionFactory)
in E:\ServiceStack.Examples\src\ServiceStack.Examples\
ServiceStack.Examples.ServiceInterface\Support\ConfigureDatabase.cs:line 23}
Ho scaricato ultimo file System.Data.SQLite.dll e ha cercato di usarlo, ma sono sempre ancora lo stesso errore. Sono in esecuzione a 64 bit VS2010 il 7 scatola di Windows a 64 bit.
Soluzione
fissato l'obiettivo della piattaforma del progetto principale per x86 a risolvere questo problema. Questo può essere fatto in Progetto ... -> Proprietà -.> Crea
SqlLite è più probabile un componenti a 32 bit, e di essere in grado di caricare le esigenze applicative essere un'applicazione a 32 bit così (processi a 64 bit non possono caricare i componenti e viceversa a 32 bit versa).
Altri suggerimenti
Questo è un problema quando si cerca di caricare lo SQLite.dll 32bit con un 64 bit di IIS / pc.
Per farlo funzionare è necessario 'abilitare le applicazioni a 32 bit' per il tuo dominio di applicazione da:
- Apertura Gestione IIS
- Fai clic su 'Impostazioni avanzate' sul pool di applicazioni.
- Imposta Attiva applicazioni a 32 bit a true
Per una risposta più tempestiva sentitevi liberi di inviare un collegamento a tutte le domande relative ServiceStack al ServiceStack gruppo Google .
Aggiornamento: Ho dimenticato di aggiungere: è necessario anche il vostro più in alto il livello di progetto (vale a dire l'applicazione web ASP.NET) per avere il suo set di configurazione build per x86 (32 bit).
Se si scarica il ultima versione di ServiceStack.Examples (v2.01) questo dovrebbe funzionare su server a 64 bit.
Maggiori informazioni su questo può essere seguito sul:
https://groups.google.com/d/topic/servicestack/EUPqF2jI4ig/discussion