Contenidos
Servidor recibe objeto con métodos, una vez recibido crea el objeto y ejecuta varios métodos
1 2 3 4 5 6 7 8 9 10 11 12 13 |
$ip = New-Object System.Net.IPEndPoint ([IPAddress]::Loopback,0) $udp = New-Object System.Net.Sockets.UdpClient 2021 $objetometodos = [Text.Encoding]::ASCII.GetString($udp.Receive([ref]$ip)) $objetometodos | iex # Crear objeto coche con valores $CocheCompleto = [Coche]::new() # Encadenar varios métodos $CocheCompleto.ElegirModelo("Ibiza").ElegirMarca("Seat").ElegirColor("Negro") $udp.Close() |
Cliente que envía un objeto con métodos
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
$ip = New-Object System.Net.IPEndPoint ([IPAddress]::Loopback,2021) $udp = New-Object System.Net.Sockets.UdpClient # Enviar case coche con propiedades, constructor y métodos $objetometodos = [Text.Encoding]::ASCII.GetBytes('class Coche { $Marca $Modelo $Color Coche() { } [Coche]ElegirModelo($Modelo) { $this.Modelo = $Modelo return $this } [Coche]ElegirMarca($Marca) { $this.Marca = $Marca return $this } [Coche]ElegirColor($Color) { $this.Color = $Color return $this } }') $udp.Send($objetometodos,$objetometodos.length,$ip) | Out-Null $udp.Close() |
Resultado
