Auf einem webforms .aspx
Seite System, die Master-Seite ein paar Eigenschaften Auto initialisiert, als solcheWann initialisieren C# Auto-Eigenschaften?
public bool MyProp => bool.Parse(Service.Settings["YorN"]);
Profilieren Laden der Seite hat, sehe ich, dass zwischen dem PreRender
Ereignis, und die Initialisierung eines der Objekte Es eine große Lücke.
Wo kann ich nach der Verzögerung suchen? Was läuft zwischen den beiden?
Ist es nicht _after_ der Konstruktor aufgerufen wird? – JNF
@JNF: Es wäre, bevor der Konstruktor * body * zur gleichen Zeit wie andere Feldinitialisierer ausgeführt wird. –
@JNF Nein, Feldinitialisierungen werden vor dem Konstruktor ausgeführt. Erstellen Sie eine Instanz dieser Klasse, um selbst zu sehen: 'public class Foo {int i = 5; Öffentliches Foo() {Console.WriteLine (i); }} 'Wenn das Feld zuerst initialisiert wird, wird '5' gedruckt, andernfalls '0'. – Servy