Current Version
SubSonic 2.0.3 - July 11, 2007 - The latest and greatest. Some fixes and enhancements from 2.0.2. Download it from CodePlex.
What's New and Changed
- The template execution engine has undergone a complete overhaul with an emphasis on optimizing execution performance, with improvements of up to 800%. If you've used 2.0.2 or earlier, you're definitely going to feel the difference.
- Three new provider configuration parameters:
- enableTrace - Allows tracing to be enabled or disabled, addressing certain performance and medium trust issue. Defaults to false.
- fixDatabaseObjectCasing - Allows case transformations on database objects to be enabled or disabled, preserving the original database casing. Default is true.
- additionalNamespaces - An optional comma-separated list of namespaces to be added to using/Imports blocks at the top of generated code.
- The PreUpdate() and PostUpdate() virtual methods in ActiveRecord.Save() have been deprecated and will be removed in the next release. They have been replaced and enhanced with:
- BeforeValidate() - Executes before any record validation is performed.
- BeforeInsert() - Executes before the insert command is generated for new records.
- BeforeUpdate() - Executes before the update command is generated for existing records.
- BeforeCommit() - Executes just prior to execution of INSERT/UPDATE command.
Fixes and Work Items
Work Item 9495 - Allow User-Specified Namespace References in Generated Code
Work Item 10237 - StarterSite Default Permissions Allow Administrator Access to All Users
Work Item 10924 - All StarterSite Pages and UserControls Should Inherit from a Single Base Class
Work Item 11228 - ExecuteJoinedDataset Doesn't Fully Qualify Table Reference with Schema Owner
Work Item 11306 - Logical Deletes do not Properly Deal with Null Values
Work Item 11330 - VB Scaffold Templates v. 2.0.2
Work Item 11359 - QuickTable Generates Errors when Used with Views
Work Item 11361 - ODS Controller Templates Generate Code with Logical and Physical Deletes both Marked as Default
Work Item 11370 - BuildProvider doesn't Properly Identify Current Language
Work Item 11379 - VB Classes aren't Generated with Nullable Properties
Work Item 11449 - Scaffold Improvements and Fixes: GUID PK, Hiding ID Column, Fully-qualified Table Names
Work Item 11484 - Column Values not Properly Initialized When Wrapped in TransactionScope
Work Item 11496 - Allow User-Specified Columns to be Hidden in Scaffold Editor
Work Item 11517 - PreUpdate() called too late when saving
Work Item 11557 - QuickTable Does not Prevent Sorting of Large or Binary Data Types
Work Item 11583 - Incorrect Type Mapping in OracleDataProvider for CLOB/NCLOB Data Types
Work Item 11595 - Paged query is not sorted
Work Item 11606 - Sugar.Validation Does not Properly Validate Credit Card Numbers
Work Item 11627 - Non-nullable Reserved Columns Fail Validation
Work Item 11630 - Collection.ToDataTable Does not Set TableName
Work Item 11630 - AbstractRecord TableName Property is Never Set
