Rockford Lhotka
    CTO at Magenic
    Author, speaker, software architect
    Creator of the CSLA .NET framework

About me
Contact me


Version 3.6.3 change log


This document is the change log for version 3.6.3 of CSLA .NET for Silverlight.


For a more complete list of changes, go to, select “all issues” and filter the status to “closed” and/or “checked in”.


Click here for a list of known issues with this version.


Release 3.6.3-090610:


Security\UsernameCriteria (090604)

Add default constructors so this type can serialize to/from Silverlight.


Security\MembershipIdentity (090603)

Fix issue so this type can be used directly from a Silverlight app (without the need to create a subclass).


Security\WindowsIdentity (090602)

Make Roles property protected so a subclass can overwrite the list of roles. This enables a common scenario where the user is authenticated as a Windows user, but their roles are loaded from another location (such as a SQL table).


Pre-Release 3.6.3-090526:


ObjectFactory (090522)

Add ReadProperty() method to ObjectFactory base class so a totally non-public property in a business object can be accessed for data access.


LoadProperty() (090521)

The non-generic LoadProperty() method now resets a child’s edit level values as appropriate. This makes the non-generic method match the behavior of the generic LoadProperty() overloads.


Lazy loaded child objects (090521)

Throw an exception when attempting to read an uninitialized lazy loaded child object.

This may be a breaking change in some cases.


Pre-Release 3.6.3-090518:


Validation (090505)

Add overload so AddRule() can specify a priority when adding an async validation rule.


MobileFormatter (090424)

Enhance MobileFormatter so it can serialize enum values.


MobileFormatter (090424)

Fix issue with serialization of null child object values.


MobileFormatter (090424)

Fix issue with serialization of different objects that return the same hash code and report being equal with Equals(), but not with ReferenceEquals().


CoerceValue (090420)

Enhance CoerceValue() so it works with interfaces and inheritance.


BeginSave method (090420)

Fix use of incorrect resource string for ValidationException message text.


DataPortalClient\FactoryProxy (090407)

The ObjectFactory model was automatically calling MarkOld() and MarkNew() on root objects created by a local factory object. This was bad, because it doesn’t match the .NET behavior, and because it is inconsistent between root and child objects – which just leads to ugly confusion. So the FactoryProxy no longer calls these methods automatically, and the factory object itself must explicitly make the calls, just like on .NET. This is a breaking change.


Silverlight\CslaDataProvider (090407)

Fixed a bug where the data provider control was raising the DataChanged event twice, causing double-processing by the UI.



(Updated 6/10/2009 1:20:39 PM)