public LocalIpViewModel(ILocalIp data) { _data = data; _settingID = data.SettingID; _macAddress = data.MACAddress; _name = data.Name; _dHCPEnabled = data.DHCPEnabled; if (!data.DHCPEnabled) { _isAutoDNSServer = false; } else { _isAutoDNSServer = string.IsNullOrEmpty(data.DNSServer0); } _isAutoDNSServerInitial = _isAutoDNSServer; _iPAddressVm = new IpAddressViewModel(data.IPAddress); _iPSubnetVm = new IpAddressViewModel(data.IPSubnet); _defaultIPGatewayVm = new IpAddressViewModel(data.DefaultIPGateway); _dNSServer0Vm = new IpAddressViewModel(data.DNSServer0); _dNSServer1Vm = new IpAddressViewModel(data.DNSServer1); this.CopyIp = new DelegateCommand(() => { string ip = _iPAddressVm.AddressText ?? "无"; Clipboard.SetDataObject(ip, true); VirtualRoot.Out.ShowSuccess(ip, header: "复制成功"); }); }
public void SetIp(ILocalIp data, bool isAutoDNSServer) { ManagementObject mo = GetManagementObject(data.SettingID); if (mo != null) { if (data.DHCPEnabled) { mo.InvokeMethod("EnableStatic", null); mo.InvokeMethod("SetGateways", null); mo.InvokeMethod("EnableDHCP", null); } else { ManagementBaseObject inPar = mo.GetMethodParameters("EnableStatic"); inPar["IPAddress"] = new string[] { data.IPAddress }; inPar["SubnetMask"] = new string[] { data.IPSubnet }; mo.InvokeMethod("EnableStatic", inPar, null); inPar = mo.GetMethodParameters("SetGateways"); inPar["DefaultIPGateway"] = new string[] { data.DefaultIPGateway }; mo.InvokeMethod("SetGateways", inPar, null); } if (isAutoDNSServer) { mo.InvokeMethod("SetDNSServerSearchOrder", null); } else { ManagementBaseObject inPar = mo.GetMethodParameters("SetDNSServerSearchOrder"); inPar["DNSServerSearchOrder"] = new string[] { data.DNSServer0, data.DNSServer1 }; mo.InvokeMethod("SetDNSServerSearchOrder", inPar, null); } } }
public void Update(ILocalIp data) { this.Name = data.Name; _iPAddressVm.SetAddress(data.IPAddress); _iPSubnetVm.SetAddress(data.IPSubnet); _defaultIPGatewayVm.SetAddress(data.DefaultIPGateway); _dNSServer0Vm.SetAddress(data.DNSServer0); _dNSServer1Vm.SetAddress(data.DNSServer1); }
public static LocalIpInput Create(ILocalIp data, bool isAutoDNSServer) { return(new LocalIpInput { DefaultIPGateway = data.DefaultIPGateway, DHCPEnabled = data.DHCPEnabled, DNSServer0 = data.DNSServer0, DNSServer1 = data.DNSServer1, IPAddress = data.IPAddress, IPSubnet = data.IPSubnet, MACAddress = data.MACAddress, Name = data.Name, SettingID = data.SettingID, IsAutoDNSServer = isAutoDNSServer }); }
public LocalIpViewModel(ILocalIp data) { _data = data; _settingID = data.SettingID; _name = data.Name; _dHCPEnabled = data.DHCPEnabled; if (!data.DHCPEnabled) { _isAutoDNSServer = false; } else { _isAutoDNSServer = string.IsNullOrEmpty(data.DNSServer0); } _isAutoDNSServerInitial = _isAutoDNSServer; _iPAddressVm = new IpAddressViewModel(data.IPAddress); _iPSubnetVm = new IpAddressViewModel(data.IPSubnet); _defaultIPGatewayVm = new IpAddressViewModel(data.DefaultIPGateway); _dNSServer0Vm = new IpAddressViewModel(data.DNSServer0); _dNSServer1Vm = new IpAddressViewModel(data.DNSServer1); }
public SetLocalIpCommand(ILocalIp input, bool isAutoDNSServer) { this.Input = input; this.IsAutoDNSServer = isAutoDNSServer; }