Frage

Sag ich habe:

[Attribute1(Order=0)]  
public class Controller1  
{  
    [Attribute2]  
    [Attribute3]  
    public ActionResult Action1() { ... }  
}

Die Attribute werden in der folgenden Reihenfolge ausgeführt: 2, 3, 1

Dies ist sinnvoll, da die Attribute 2 und 3 eine Reihenfolge von -1 haben und vor Attribut 1 ausgeführt werden, der eine explizit festgelegte Reihenfolge gleich 0 hat.

Nehmen wir jetzt an, ich habe:

[Attribute1]  
[Attribute2(Order=0)]  
public class Controller1  
{  
    [Attribute3]  
    public ActionResult Action1() { ... }  
}

Die Attribute werden in der folgenden Reihenfolge ausgeführt: 1, 2, 3

Warum wird das Attribut 2 in diesem Fall (die eine Reihenfolge von 0 entspricht) vor Attribut 3 ausgeführt wird (was eine Reihenfolge von -1 entspricht)?

War es hilfreich?

Lösung

Sie sollten in der Bestellung 1, 3, 2 ausgeführt werden, so wie Sie vorgeschlagen hatten. Und in der Tat führen sie in der richtigen Reihenfolge auf meiner Maschine aus.

Können Sie die Definitionen Ihrer drei Attribute bereitstellen? Hier könnte noch etwas im Spiel sein.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top