According to https://communities.vmware.com/thread/478700 : "either stick to PowerCLI version 5.5, as mentioned, or change the code to use the VimClientImpl class instead of VimClient (which is now an interface)."
A complete simple example that I used:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using VMware.Vim; namespace vSphereCli { class Program { static void Main(string[] args) { VMware.Vim.VimClientImpl c = new VimClientImpl(); ServiceContent sc = c.Connect("https://HOSTNAME/sdk"); UserSession us = c.Login(" admin@vsphere.local ", "password"); IList<VMware.Vim.EntityViewBase> vms = c.FindEntityViews(typeof(VMware.Vim.VirtualMachine), null, null, null); foreach (VMware.Vim.EntityViewBase tmp in vms) { VMware.Vim.VirtualMachine vm = (VMware.Vim.VirtualMachine)tmp; Console.WriteLine((bool)(vm.Guest.GuestState.Equals("running") ? true : false)); Console.WriteLine(vm.Guest.HostName != null ? (string)vm.Guest.HostName : ""); Console.WriteLine(""); } Console.ReadLine(); } } }
Add a link to "C: \ Program Files (x86) \ VMware \ Infrastructure \ vSphere PowerCLI \ VMware.Vim.dll". Update hostname, password; and the will!
source share