This document is the change log for version 3.5.1 of CSLA .NET.
Release 3.5.1-080803:
BusinessBase (080721-C#/VB)
BusinessBase no longer raises a PropertyChanged event when a child object changes. This is because doing so caused nasty side-effects in Windows Forms data binding, and is therefore obviously not intended behavior for that event. Instead, BusinessBase now raises a ChildChanged event when a child object (list or not) changes. The original sender and PropertyChangedEventArgs/ListChangedEventArgs values are provided to the handler of ChildChanged.
This is a breaking change for anyone handling the PropertyChanged event in a parent object to detect changes in child objects.
Beta 2 3.5.1-080717:
PropertyInfo (080713-C#/VB)
Remove one constructor overload: New(name, defaultValue). This ctor could be an ambiguous overload if <T> was string, so removal of this overload was necessary.
This is a breaking change for anyone using this overload.
BusinessBase/ReadOnlyBase (080709-C#/VB)
Add missing overload of
GetProperty<P>(PropertyInfo<P>, field,default,noaccess).
FieldData (080703-C#/VB)
Make several properties virtual to enable extensibility scenarios.
DecoratedRuleArgs (080626-C#/VB)
Fix possible formatting issues with special characters and null values.
Beta 1 3.5.1-080623:
SmartDate (080623-C#/VB)
Fix bug converting a DateTime to a SmartDate.
Pre-release 3.5.1-080610:
Linq (080610-C#/VB)
Updated the expression evaluator in the CslaQueryProvider to more appropriately match expressions that get passed through to Queryable to the correct method in cases with nested generic parameters.
Pre-release 3.5.1-080530:
BusinessBase & ValidationRules (080530-C#/VB)
Mark obsolete methods so they no longer appear in Intellisense.
ApplicationContext (080530-C#/VB)
Add a PropertyChangedMode property to allow configuration of CSLA .NET to raise PropertyChanged events the correct way for Windows Forms or WPF/XAML as appropriate.
BusinessBase (080530-C#/VB)
In PropertyHasChanged() (and thus SetProperty()), optionally raise PropertyChanged events for all properties for which validation rules are run. This change only takes effect if Csla.ApplicationContext.PropertyChangedMode is set to PropertyChangedModes.Xaml.
Pre-release 3.5.1-080529:
UndoableBase (080527-C#/VB)
Fix an issue where the FieldDataManager could find its edit level out of sync with its containing business object.
Pre-release 3.5.1-080527:
FieldDataManager (080527-C#/VB)
Fix a null reference bug and some related issues around n-level undo, data binding and managed property values.
FieldDataManager (080527-C#/VB)
Add an IsFieldDirty() method so a business object can determine if a specific field is dirty.
FilteredBindingList (080527-C#/VB)
Change Clear() to only clear the items in the filtered view.
Security\AuthorizationRulesManager (080527-C#/VB)
Fix threading issue where an ArgumentException could occur as two threads attempted to add the same item to the dictionary.
EditableRootListBase (080527-C#/VB)
Add a virtual OnChildPropertyChanged() method that is called when a PropertyChanged event is handled from a child of the list.
Pre-release 3.5.1-080426:
Linq (080405-C#/VB)
Fix a bug with the way BLB cross-references positions of an item that caused a failure scenario when calling Insert() to add a new item to a list.
Criteria (080424-C#/VB)
Add ICriteria interface and have CriteriaBase implement it. Have MethodCaller use ICriteria instead of CriteriaBase to detect the business object type.
UndoableBase (080426-C#/VB)
Fix problem where managed backing fields in FieldDataManager were not processed corrected during undo operations triggered by data binding.