Ich versuche, ein dynamisches Objekt in vb.net zu erstellen, dies wäre einfach mit PHPas es hat magische Methoden für Getters, Setter und Aufrufmethoden, aber ich muss dies tun in vb.netvb.net Äquivalent von php magischen Methoden
in PHP:
<?php
// Calles foo::__construct as normal
$myFoo = new foo();
// Calls the __set method parsing the values $name as "myVar1" and $value as "foo"
$myFoo->myVar1 = "foo";
// Runs the __set method parsing the values $name as "myVar2" and $value as "bar"
$myFoo->myvar2 = "bar";
// Calls the __get method parsing the value $name as "myVar1"
// and then a seccond call to __get parsing $name as "myVar2"
echo $myFoo->myVar1 . $myFoo->myVar2
// Calls __call parsing $name as "foobar" and $values as null
$myFoo->foobar();
// Calls __callStatic parsing $name as "barfoo" and $values as null
foo::barfoo();
?>
kann VB.NET auch mit dieser grundlegenden Ebene der Programmierung fertig werden oder ist es nicht nur:
<?php
class foo {
private $vars = array()
public function __construct() {}
public function __get($name) {
if (in_array($name, $this->vars)) {
return $this->vars[$name];
}
}
public function __set($name, $value) {
$this->vars[$name] = $value;
}
public function __call($method, $arguments) {
.....
}
public function __callStatic($method, $arguments) {
.....
}
}
?>
ich dann dieses Objekt wie verwenden können überhaupt möglich?
In Bezug auf 'get'and' set'this [Antwort] (http://stackoverflow.com/ a/20152225/5457643) könnte hilfreich sein. – Turamarth
Der 'get' und' set' Teil ist einfach, benutze einfach ein 'Dictionary (Of String, Object)' oder in generischer Form 'public class Magic (Of T) ... Wörterbuch (Of String, T)'. Das 'call' und' callStatic' könnten mit [Reflection] (http://www.codeproject.com/Articles/206412/Reflection-An-Introduction-to-Reflection-in-NE) gemacht werden. –
Die Antwort auf den anderen Beitrag ist nicht ganz das, wonach ich gefragt habe, ich habe meine Frage aktualisiert, um dies zu reflektieren und weitere Details hinzuzufügen. – Chris