Here is the finalized version and I posted some on it to my blog here:
Usage: MigrateDVSwitch-Adapter -VMHost $host -Interface vmk1 -NetworkName Vmotion -VirtualSwtich vSwitch0 -Vlan 7777
functionMigrateDVSwitch-Adapter{ param ([string]$VMHost,[string]$Interface,[string]$NetworkName,[int]$Vlan,[string]$VirtualSwitch) $VMHostobj=Get-VMHost$VMHost #Get Network ID $networkid=$VMHostObj.ExtenSionData.Configmanager.NetworkSystem # ------- AddPortGroup ------- to Standard Switch
$portgrp=New-ObjectVMware.Vim.HostPortGroupSpec $portgrp.name =$NetworkName $portgrp.vlanId =$Vlan $portgrp.vswitchName =$VirtualSwitch $portgrp.policy =New-ObjectVMware.Vim.HostNetworkPolicy $_this=Get-View-Id$networkid $_this.AddPortGroup($portgrp) # ------- UpdateVirtualNic ------- Migrate adapter to Vswitch
$nic=New-ObjectVMware.Vim.HostVirtualNicSpec $nic.portgroup =$NetworkName $_this=Get-View-Id$networkid $_this.UpdateVirtualNic($Interface, $nic) }