Nachträglich OnDelete: Cascade im EF-Modell ?

Ich hatte gerade auf einer bestehenden DB-Relation die “on update: Cascade” gesetzt, und daraufhin mein EF-Modell ge-updated.
Ein Blick in das edmx zeigte auch den erwarteten Eintrag im SSDL:

<Association Name="FK_Foo_Bar">
<End Role="Bar" Type="FooBarModel.Store.Bar" Multiplicity="1">
<OnDelete Action="Cascade" />
</End>
<End Role="Foo" Type="FooBarModel.Store.Foo" Multiplicity="*" />
<ReferentialConstraint>
<Principal Role="Bar">
<PropertyRef Name="ID" />
</Principal>
<Dependent Role="Foo">
<PropertyRef Name="BarId" />
</Dependent>
</ReferentialConstraint>
</Association>
view raw onDeleteCascade1.xml hosted with ❤ by GitHub

Leider stellte sich die Gewünschte Funktionalität nicht ein: “A relationship is being added or deleted from an AssociationSet ‘FK_foo_bar’. With cardinality constraints, a corresponding ‘bar’ must also be added or deleted.”
Nach reichlich Ärger und ein wenig googeln war der Fehler schnell gefunden: das CSDL wird nicht automatisch mit angepasst.

Nachdem also im CSDL-Teil der edmx folgendes manuell ergänzt wurde:

<Association Name="FK_Foo_Bar">
<End Role="Bar" Type="FooBarModel.Bar" Multiplicity="1">
<OnDelete Action="Cascade" />
</End>
<End Role="Foo" Type="FooBarModel.Foo" Multiplicity="*" />
</Association>
view raw onDeleteCascade2.xml hosted with ❤ by GitHub

Funktioniert auch das Löschen mit onDelete:cascade
Bleibt nur zu hoffen, dass sich die update-Funktionen des Designers im EF4 deutlich verbessert…