Hallo,
ich habe auf dem Raspberry Pi 2 Mono
(Mono JIT compiler version 3.2.8 (Debian 3.2.8+dfsg-4+rpi1) installiert
und auch eine KonsolenApplication mit Datenbank anbindung (MySql)
geschrieben.
Ich habe die .exe und die MySql.Data.dll System.Data.dll auf den
Raspberry kopiert.
Wenn ich die exe mit #mono test.exe starte erhalte ich folgenden Fehler:
Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly
'System.Data, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089' or one of its dependencies.
File name: 'System.Data, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089'
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException:
Could not load file or assembly 'System.Data, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its
dependencies.
File name: 'System.Data, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089'
ebenso wie die Meldung:
Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly
'MySql.Data, Version=6.8.6.0, Culture=neutral,
PublicKeyToken=c5687fc88969c44d' or one of its dependencies.
File name: 'MySql.Data, Version=6.8.6.0, Culture=neutral,
PublicKeyToken=c5687fc88969c44d'
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException:
Could not load file or assembly 'MySql.Data, Version=6.8.6.0,
Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its
dependencies.
File name: 'MySql.Data, Version=6.8.6.0, Culture=neutral,
PublicKeyToken=c5687fc88969c44d'
was mich wunder ist wenn die Aus dem bin Ordner die Datei
"MySql.Data.dll" kopiere auf den Mac kopiere wird daraus
"mysql.data.dll" von da aus kopiere ich sie dann auf den Raspberry muss
ich sie dann wieder umbenennen?
jetzt bekomme ich folgende Meldung wenn ich die .exe ausführe
Unhandled Exception:
System.TypeInitializationException: An exception was thrown by the type
initializer for MySql.Data.MySqlClient.MySqlConnection --->
System.TypeInitializationException: An exception was thrown by the type
initializer for System.Collections.Generic.Queue`1 --->
System.InvalidProgramException: Invalid IL code in
System.Collections.Generic.Queue`1:.cctor (): method body is empty.
--- End of inner exception stack trace ---
at
MySql.Data.Common.Cache`2[System.String,MySql.Data.MySqlClient.MySqlConn
ectionStringBuilder]..ctor (Int32 initialCapacity, Int32 capacity)
[0x00000] in <filename unknown>:0
at MySql.Data.MySqlClient.MySqlConnection..cctor () [0x00000] in
<filename unknown>:0
--- End of inner exception stack trace ---
at MySQLReadWrite.Program.init () [0x00000] in <filename unknown>:0
at MySQLReadWrite.Program.Main (System.String[] args) [0x00000] in
<filename unknown>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException:
An exception was thrown by the type initializer for
MySql.Data.MySqlClient.MySqlConnection --->
System.TypeInitializationException: An exception was thrown by the type
initializer for System.Collections.Generic.Queue`1 --->
System.InvalidProgramException: Invalid IL code in
System.Collections.Generic.Queue`1:.cctor (): method body is empty.
--- End of inner exception stack trace ---
at
MySql.Data.Common.Cache`2[System.String,MySql.Data.MySqlClient.MySqlConn
ectionStringBuilder]..ctor (Int32 initialCapacity, Int32 capacity)
[0x00000] in <filename unknown>:0
at MySql.Data.MySqlClient.MySqlConnection..cctor () [0x00000] in
<filename unknown>:0
--- End of inner exception stack trace ---
at MySQLReadWrite.Program.init () [0x00000] in <filename unknown>:0
at MySQLReadWrite.Program.Main (System.String[] args) [0x00000] in
<filename unknown>:0
bass schrieb:> jetzt bekomme ich folgende Meldung wenn ich die .exe ausführe
das wird jetzt wohl schwerer. Das scheint mir mehr ein Problem zwischen
Mono und deiner exe zu sein.
Da kannst du nur mal schauen, ob du die neuste Version von Mono hast.
Hat jemand denn eine C# Anwendung mit mySql-Anbindung auf dem Raspberry
am laufen und kann mir vielleicht sagen in welcher Reihenfolge und
welche Versionen funktionieren?
ok danke dann bekomme ich folgende Meldungen:
Program.cs(2,7): error CS0246: The type or namespace name `MySql' could
not be found. Are you missing an assembly reference?
Program.cs(11,10): error CS0246: The type or namespace name
`MySqlDataReader' could not be found. Are you missing an assembly
reference?
Program.cs(12,10): error CS0246: The type or namespace name
`MySqlConnection' could not be found. Are you missing an assembly
reference?
Program.cs(13,10): error CS0246: The type or namespace name
`MySqlCommand' could not be found. Are you missing an assembly
reference?
geht bei mir unter Debian mit mono
dmcs test.cs -r:MySql.Data.dll -r:System.Data
musste nur die Zeile mit dem SerialPort auskommentieren.
habe nur die MySql.Data.dll noch mit ins verzeichniss gelegt.
bass schrieb:> Ich habe die .exe und die MySql.Data.dll System.Data.dll auf den> Raspberry kopiert.>> Wenn ich die exe mit #mono test.exe starte erhalte ich folgenden Fehler:
Warum arbeitest du überhaupt mit C# wenn das Zielsystem ein Linux ist?
Mit Python würde es wahrscheinlich längst laufen.
Karl schrieb:> Warum arbeitest du überhaupt mit C# wenn das Zielsystem ein Linux ist?> Mit Python würde es wahrscheinlich längst laufen.
es gibt halt Leute die wert auf Typsicherheit legen. Und sich nicht mit
scripten beschäftigen wollen.
Ich kann es nachvollziehen.
bass schrieb:> Welche Versionen hast du denn von MySql.Data.dll und System.Data???
MySql.Data.dll aktuelle aus dem Netz
System.Data keine Ahnung, mono ist bestimmt schon 1 Jahr alt.
Hast du etwa die System.Data mit hin kopiert?
Bei mir ist es aber ein normales x68 System, kein rpi.
Aber nochmal zurück mit welcher Sprache sollte man den auf dem Pi
programmieren ??? C,C++ Phyton was ist am gängigsten? Habe beruflich
halt viel mit C# zu tun...
bass schrieb:> Aber nochmal zurück mit welcher Sprache sollte man den auf dem Pi> programmieren ??? C,C++ Phyton was ist am gängigsten? Habe beruflich> halt viel mit C# zu tun...
dann würde ich auch bei C# bleiben, üblich ist es aber nicht.