This project has moved and is read-only. For the latest updates, please go here.

Delete EditableChild clarification

Nov 20, 2011 at 12:53 PM
Edited Dec 4, 2011 at 6:46 PM

1) Usual delete methods are as follows:

protected override void DataPortal_DeleteSelf()

This method calls

protected void DataPortal_Delete(<ID of the object>)


2) EditableChild doesn't use any of the above. A single method is used

private void Child_DeleteSelf(<parent reference>)

The <parent reference> is passed to the method only when Parent only inserts is false (meaning the parent also participates in updates and deletes).
The generator finds the identity properties of the object and generates the appropriate code.

3) Should it be possible to pass other parameters to the method? I don't see the point as this is a delete SELF operation. It's not clear whether CslaGen authors intended this to be possible but CslaGenFork will prevent it from happening. So no DeleteOptions on criteria for EditableChild

4) This is further complicated by EditableSwitchable as this stereotype may behave like a root and like a child. EditableSwitchable generation is a big problem and won't be solved at this time.

5) Changes made to the UI

  • Csla Object Info panel Insert & Update RunLocal changed to RunLocal
  • Csla Object Info panel, on EditableChild shows 08. Insert, Update, Delete Options with Delete Procedure Name (born again) property
  • Criteria Collection Editor popup, on EditableChild shows no DeleteOptions