Objekttyp 'System.String [*]' kann nicht in 'System.String []' umgewandelt werden
Hallo allerseits, ich hatte ein Problem mit einem Code in C # .NET. Ich verwende eine DLL für die Verbindung zu OPC-Servern. Die DLL wurde in einem VB.NET-Projekt verwendet und funktioniert problemlos.
Ich versuche, eine Liste der verfügbaren Server in einer ListBox anzuzeigen. Der in VB.NET verwendete (und funktionierende) Code lautet wie folgt:
Dim AllOPCServers As Object
AllOPCServers = AnOPCServer.GetOPCServers
' Load the list returned into the List box for user selection
Dim i As Short
For i = LBound(AllOPCServers) To UBound(AllOPCServers)
AvailableOPCServerList.Items.Add(AllOPCServers(i))
Next i
und ich schrieb dies in der C # -Anwendung zu verwenden
try
{
var _listOPCServer = _OPCServer.GetOPCServers();
foreach(var i in _listOPCServer)
{
string serverName = (string)i;
listServers.Items.Add(serverName);
}
}
catch (Exception exc)
{
lstMsg.Items.Add(DateTime.Now + " Error al Obtener Lista de OPC's: " + exc.Message);
}
Im Debug-Modus auf der Registerkarte Lokal wird Folgendes angezeigt:
_listOPCServer | {string [1..2]} | dynamisch {string []} |
[1] | "Server01" | string
[2] | "Server02" | string
AKTUALISIEREN:
Ich bekomme den Fehler in der Zeile "foreach (var i in_listOPCServer) "
Objekttyp 'System.String [*]' kann nicht in 'System.String []' umgewandelt werden
Das ist der eigentliche Fehler.
Ich bin sicher, dass ich etwas falsch mache, kann mir jemand helfen?