大家好,我在C# .NET代码中遇到了问题。我正在使用一个DLL连接到OPC服务器,该DLL已经在VB.NET项目中使用并且没有任何问题。
我尝试在一个ListBox中显示可用服务器列表,VB.NET中使用的代码是:
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
我写这个是为了在C#应用程序中使用
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);
}
在本地选项卡上调试模式显示如下:
_listOPCServer | {string[1..2]} | dynamic {string[]} |
[1] | "Server01" | string
[2] | "Server02" | string
更新:
我在 "foreach(var i in _listOPCServer)" 这一行收到了错误提示。
无法将对象类型 'System.String[*]' 强制转换为类型 'System.String[]'
这是实际的错误提示。
我确定自己做错了什么,能有人帮帮我吗?
(string[])(new string[0,0])
,虽然我不知道如何产生完全相同的消息.. 不过请您发表 真实错误消息 (复制并粘贴)以避免可能出现的错误。 - user166390_listOPCServer
转换为任何类型。 - D Stanley