Entwickler-Ecke

Sonstiges (.NET) - Zur Laufzeit ein Attribut einem Objekt (Propertie) zuweisen


WizoHulk85 - Mi 10.06.15 14:31
Titel: Zur Laufzeit ein Attribut einem Objekt (Propertie) zuweisen
Hallo...

Gibt es eine Möglichkeit zur Laufzeit einer Property aus einer Metadata Class ein Attribut anzuhängen?
Ich hab das ganze Netz schon durchsucht und bin zu keiner passenden Lösung gekommen.

Danke für eure Hilfe...


Ralf Jansen - Mi 10.06.15 22:56

Attribute gehören zum Typ nicht zur Instanz einer Klasse (Alle Instanzen einer Klasse werden immer die gleichen Attribute haben).

Wenn du einen neuen Typ zur Laufzeit erzeugt dann kannst du dem auch passendes Attribute mitgeben. Aber auch dann werden alle Instanzen dieses Typs dieses Attribut haben.
Guckst dir in der Hilfe beim CustomAttributeBuilder [https://msdn.microsoft.com/en-us/library/vstudio/system.reflection.emit.customattributebuilder(v=vs.100).aspx] das Codebeispiel an. Das zeigt die Erstellung eines neuen Typen mit Attributen. Dort zwar für eine Methode aber bei einer Property wäre es ähnlich.


Th69 - Do 11.06.15 09:43

Hallo WizoHulk85,

bitte Crossposts immer verlinken: myCSharp.de - Zur Laufzeit ein Attribut einem Objekt (Propertie) zuweisen [http://www.mycsharp.de/wbb2/thread.php?threadid=114863]

PS: Die Einzahl von Properties ist Property ;-)


Ralf Jansen - Do 11.06.15 12:22

Da werde ich gerade neugierig. Die erwähnte Klasse gehört zu XAF richtig? Also einem kompletten Anwendungsframework. Dir scheint der Hinweis auf die Schichtenarchitektur geholfen zu haben. Klingt für mich aber merkwürdig ein Anwendungsframework mit einer eigenen Schichtenarchitektur zu kombinieren :gruebel: Was machst du da jetzt genau ;)