两个或多个vimclient实例

时间:2017-07-27 14:42:50

标签: c# vmware vsphere

我正在编写需要访问两个或更多vSphere主机的C#应用​​程序,而不是vCenter。我可以连接到所有正常并列出VM,但是当我查询VM时,它从最后连接的vShere主机获取vimClient信息。有没有办法保留每个VM的VM主机信息?

我使用以下内容连接到主机1:

Client_1.Connect(logon.esxiLogonURL(IP_1.Text));
Client_1.Login(logon.esxiLogonUser(username_1.Text), logon.esxiPassword(password_1.Text));

以及以下连接到主机2

Client_2.Connect(logon.esxiLogonURL(IP_2.Text));
Client_2.Login(logon.esxiLogonUser(userName_2.Text), logon.esxiPassword(password_2.Text));

我对如何做到这一点有任何想法?

由于

1 个答案:

答案 0 :(得分:-1)

将连接对象保存到List并稍后再参考。

List<VimClient> ConnectionList = new List<VimClient>();

Client_1.Connect(logon.esxiLogonURL(IP_1.Text)); Client_1.Login(logon.esxiLogonUser(username_1.Text); logon.esxiPassword(password_1.Text));

ConnectionList.Add(Client_1);

Client_2.Connect(logon.esxiLogonURL(IP_2.Text)); Client_2.Login(logon.esxiLogonUser(userName_2.Text); logon.esxiPassword(password_2.Text));

ConnectionList.Add(Client_2);

foreach (VimClient Connection in ConnectionList){ get vmhost information }