sql >> Databáze >  >> RDS >> Mysql

Nelze načíst soubor nebo sestavení „Chyba System.Data při nasazování aplikace na produkční databázi

Důvod, proč je výjimka vyvolána, jakmile zadáte metodu, je jednoduchý - kompilátor JIT potřebuje pouze vyřešit odkazy. MySqlConnection vyžaduje System.Data a je to první metoda, jak to udělat, takže tehdy je vyvolána výjimka.

Pokud jde o ladění problému, zdá se, že jde o nesprávně nainstalovaný rámec .NET na cílovém počítači. Měli byste zkusit Jak na to povolit protokolování selhání vazby sestavení (Fusion) v .NET abychom se podívali, kde se .NET ve skutečnosti snaží najít knihovnu a proč vůbec zahazuje všechny, které najde.

Pokud vás to nepovede k vyřešení vašeho problému, zkusil bych odinstalovat a znovu nainstalovat .NET framework 2.0 a poté 3.5.

Důvod, proč Copy Local funguje, je ten, že se pak aplikace nepokouší načíst DLL z Global Assembly Cache, ale spíše ze spustitelného adresáře vaší aplikace. Váš skutečný problém je však v tom, že nenachází správnou knihovnu DLL v GAC.

Pokud vám Fusion ukáže, že se knihovna MySQL pokouší načíst špatnou verzi System.Data, můžete pomocí manifestu aplikace přinutit načíst jinou verzi (která by snad měla být kompatibilní). O manifestech aplikace si můžete přečíst zde - http:// msdn.microsoft.com/en-us/library/aa374191(VS.85).aspx

Hodně štěstí.



  1. použít PHP k vytvoření tabulky HTML z dotazu MSQL, bez duplicitních řádků?

  2. Flushing Single Cursor

  3. Exportujte data z MySQL do Excelu s kódováním UTF-8

  4. PHP nezobrazuje výsledek dotazu MYSQL