Ich habe über die Angemessenheit der Reflexion in C# -Code gefragt. Zum Beispiel habe ich eine Funktion geschrieben, die durch die Eigenschaften eines gegebenen Quellobjekts iteriert und eine neue Instanz eines bestimmten Typs erstellt und dann die Werte von Eigenschaften mit demselben Namen von einem zum anderen kopiert. Ich habe dies erstellt, um Daten von einem automatisch generierten LINQ-Objekt in ein anderes zu kopieren, um die fehlende Vererbung von mehreren Tabellen in LINQ zu umgehen.Begründung für die Reflexion in C#
Aber ich kann nicht helfen, aber denken, dass Code wie dieser wirklich "betrügt", d. H., Anstatt die bereitgestellten Sprachkonstrukte zu verwenden, um ein gegebenes Ende zu erreichen, erlaubt es Ihnen, sie zu umgehen.
Inwieweit ist diese Art von Code akzeptabel? Was sind die Risiken? Was sind legitime Anwendungen dieses Ansatzes?
Wenn ich gefragt würde, was die Vor- und Nachteile der Reflexion sind, wäre dies eine geeignete Antwort? –