Pages

Feb 9, 2011

SharePoint 2010: Lists & Events Improvements

  • Improved support for Events
    • WebAdding & WebProvisioning
    • ListAdding & ListAdded
    • ListDeleting & ListDeleted
    • Post Synchronous events
    • SPEventReceiverDefinition.Synchronization (post processing after the commit of the action and before presentation with the result of the post)
    • Cancel events & custom error pages
      • MSF 4.0 introduces capability to cancel error and redirect user to custom error page
      • Synchronous cancel with error URL
      • Supported in SharePoint Browser UI only (no client support)
    • WSS 3.0 events ran in context of user who triggered event, certain workflow actions were at system level
    • WSF 4.0 adds event impersonation (the originating user & user token on SPEventPropertiesBase
    • New Registration Capabilities
      • New events registration at Site Collection Level
      • SPSite & SPWeb event receiver registration via Features
  • List Relationships and Joins
    • Yes we now can join lists (not like a sql join)
    • Set up a relationship first through a lookup field
      • Projected fields
        • Extra fields pulled from Parent List into view of child list
        • no data is saved, it is just in view (read-only)
        • show additional secondary data for presentation from parent
      • Referential integrity (cascade operations)
      • Select operations from both lists using LINQ (SPLinq)
        • Supports LINQ, CAML, SPD 2010 (note: LINQ generates CAML under the covers)
        • SPQuery.Join, SPQuery.ProjectedFields
    • New Security considerations & issues
  • Large List Support
    • MSF 4.0 can now support 50 Million items (previously recommended 2000 for optimal performance)
    • Configuration options per web application
    • Admins can request privileged operations
    • Two threshold (configurable using PowerShell)
      • Warning threshold (2000 items)
      • Throttling threshold (5000 items, error message when 5000 limit is reached)
    • override query safety checks
      • Normal user – 5000 items
      • Super User – 20,000 items
    • Configure time window for expensive queries (set time for expensive queries)
    • Wide List Throttling
      • SPListItem limited to 8K of data
      • maximum number of joins – 6 , > 6 error is thrown
    • Mark columns unique
    • Unique columns must be indexed
    • Existing data is validated for uniqueness
    • uniqueness determined by SQL-collation (case sensitivity)
  • List Item and Field Validation
    • New column-level & row-level constraints on Lists & List Items

No comments: