Jan
Below are the rest of my observations on SharePoint 2010. Apologies for the delay in publishing these, I’ve been running a .NET training course internally in work.
- Team sites now have a pages library
- Wiki linking is built into pages. You can now wiki link to pages, lists, items and docs
- Silverlight is built-in to SharePoint’s ‘Create’ dialog. Apparently SL can be made accessible. Not sure if this is the case with this Silverlight dialog. Need to check accessibility
- Pages check for changes every minute and auto save if you have made any.
- Built-in Rich Text Editor has multiple levels of undo
- Versioning is on by default.
- New master pages exist. v4 is the latest. Changes here are carried through to site settings pages. Also have a minimal (no ribbon), simple (for error pages) and default (legacy)
- Accessibility is covered by everything being AA and XHTML. Not sure if this applies to central admin though.
- Text editors all render to XHTML
- You can add buttons to the SP Ribbon. I tried this and it’s a nightmare….
- You can associate more forms with lists, rather than New, Edit & Display. This includes InfoPath forms. Done through SPD
- XLSTViewWebPart is used for all list data now. More efficient and custom XSL can be supplied.
- Ajax settings can be configured on lists, i.e. refresh interval, manual refresh button, enable/disable Ajax etc.
- Lists can support inline editing (enabled in SPD) and a rating column (think star’s *****) , although InfoPath doesn’t support the latter in it’s designer.
- 2 versions of InfoPath are being banded about, a designer and a ‘Filler’
- A new post processing synchronous event now exists for lists that can be used to give feedback to a user after an item has been added.
- Cancelled events can redirect to a custom page that displays within a SP Modal Dialog
- Event submitters can be determined. In WSS sometimes the event owner would be assigned to a workflow/system account. MSF holds details on who raised what event.
- Built-in SP Explorer doesn’t expose bound list events. This is poor. No visibility if a list has 34 events already bound to it.
- Lists now support referential integrity (master detail) and cascading deletes.
- List joins can be made through queries (join up to 6 lists). Limit of 800kb for return results
- Projected fields now exist within lists, i.e. on a child list display a field from the parent, i.e. parent:company name
- MSF (Microsoft SharePoint Foundation) now supports 50m list items
- Throttling available from central admin for list queries. Can be time based (i.e. only allow this quota between 9-5pm). Settings available to allow/deny overrides via the object model. Administrator has a lot of control on query results.
- Unique column constraints available on column types. Company name can be made unique. Requires indexing and depends on SQL Collation
- Linq To SharePoint removes CAML Pain, but you need to generate SP Class Entities via a tool in the 14 hive called SP Metal. Basically point SP Metal at your SP Site and it generates a load of strongly typed C# classes.
- Lists are still stored as STP files, despite site templates being converted to WSP’s.
- Columns now have validation. Syntax similar to Excel, i.e. [CompanyEmployees] >= 50
Client Object Model
- Consistent interface across .NET, Silverlight, Javascript. Same (to a degree) method names. Obviously some differences in type support, i.e. JS’s NAN
- ‘Client Context’ used to batch operations
- All communications go through a client.svc WCF Service
- Requests appear to be sent as XML, responses as JSON
- New Silverlight webpart. XAP files deployed to webparts folder. XAP file is simple a zip for cross platform operation
- LINQ To SP not provided within Silverlight. ADO.NET Data services used instead
- Uploading an office theme for use in SP2010 doesnt work in this beta.
- SharePoint ‘Web application service’ service under central admin is used to sync your WFE servers. It’s dangerous though because it starts deleting your IIS files when you stop it. It will recreate them when restarting but any web.config changes etc you’ve made are gone
Workflows
- Workflows can now run against a site & list items. Event handlers needed to initialise
- Workflows can listen to notifications from external systems before resuming excution. Uses EDE (external data exchange). Long winded and complicated process
- Workflows can now be added & deployed via the new Feature packager
- Workflows can be created in Visio, exported to SPD and then again brought into VS2010. You can move between Visio & SPD easy enough but it seems that when it enters VS2010 it can’t be exported again to the others
- No version control in SPD other than SP2010’s list version control.
- New workflow events (started, completed)
- New visio web plugin displays visually the workflow path. It’s ok. Doesnt center workflow properly on load. Bit like page viewer web part
- SSP is gone, replaced by Service Providers. These can be load balanced & moved across servers as required.
- New Word automation service can be used to convert docs to PDF, Word 2003 etc. Word Open XML SDK intended for doc manipulation. Will still need Aspose.Net for Word 2003 docs
- Developers can create their own Service Providers. Looks reasonably complicated. Specific usage scenarios, i.e. intense calculations etc
BCS
- BCS is the new BDC
- Entities are now ECT’s, External Content Types
- BCS is now supports read/write to external systems
- SPD used quite well to create connections and CRUD screens
- SP2010 now has external lists that can expose data from external systems. Appears that workflows now support for these list types
- SSO details now stored in new Secure Store Service
- Groove (SP Workspace) seemed decent enough. Change I made in Groove went back to SP2010 and then on out to external system (SQL DB)
ECM
- Folders now supported in Page Libraries
- new content deployment option ’snapshot’. Time based snapshot sent between servers. Requires Enterprise SQL ‘05 or ‘08.
- New web analytics & reports. Looked ok but definitely not google contenders. Didn’t appear to be a means to export
- End users can now tag metadata to content themselves in addition to standard method
Record management now possible ‘outside’ record center - New ‘Unique Document Id’ service. Every document given a unique ID. Stays with it even if moved. Apparently has limited configuration options. This ID when used in conjunction with a specific URL (by sticking the ID on the query string) will take people to the document regardless if it is moved within the same document library or across libraries within a site collection
- Hold actions no longer tied to record center
- New document set. Content type composed on sub content types. ‘Document Set’ feature needed to be activated for it to work.
- Doc sets have versions and workflows can be run against them and constituents. Possible use is WF to check that all docs have been completed before moving to next stage.
Search
- 3 Levels of Search for SP Foundation Server
-
- Basic – Search Server Express 2010
- Intermediate – SharePoint search 2010 (Index outside SP & Filestores)
- Advanced – FAST can accept ‘push’ updates from code
-
- JDBC Support now included
- SP2010 has search connectors for Exchange, Notes, Documentum, FileNet, Opentext & custom .NET connector
- Support for search attachments
- Search web parts now unsealed. Can be overridden.
- New ability to override a query before its executed and results before display to users
- Search can have multiple levels of ranking models. Can be manipulated via PowerShell
BI
- BI Includes status indicators (as before, i.e. red amber green), chart web part, Performance Point Services, Excel Services, BI Search, Visio Services (Visual representation of KPI’s in Visio)
- Reporting Services doesn’t ship with 2010. Separate download
- BI Search adds Excel & Reporting services to search. Search for ‘delivery’ & spreadsheets with query are returned & filtered on query
- BI Centre template – Starting point with BI Portals
- New server product ‘Gemini’ provides in memory olap manipulation. Seamless for developers, no need to touch it.
- Little change is PerformancePoint Services
- Office Excel Web app looks decent.
Sandbox Solutions
- Site collection owners have power to deploy WSP’s to the sites sandbox, which is called ’solution gallery’
Sandbox basically uses a cut down SP2010 Object model. - Code executes in a separate process ‘Microsoft SharePoint Foundation User Code Service’
- A validation framework exists that can scan & validate wsp’s that are uploaded to the sandbox. Validators can revoke permission for the wsp to execute
- Sandboxed solutions are isolated to their own site collection.
Two versions of the Microsoft.SharePoint.dll exist. The full version and the subset. - When you create a new VS2010 project, you’re prompted if you want full trust of sandbox. If you select sandbox it ’still’ uses the full dll. No compile time checking that you should be using a restricted sharepoint dll.
- Sandbox apps use quotas. These are configurable and cover a varied number of scenarios such as process memory, db calls etc. For example, 20 db calls = 1 resource point. It you hit the max quote your web part/code is halted by SharePoint
- A timer job resets quotas at the end of the day.
- Doesn’t appear to be a means to determine what caused your quota to max out
- Quotas set via central admin or powershell
- I feel that setting quotas could be a dark art. Users * web parts * queries/cpu executions etc
- No means to promote from sandbox to live. Would require a removal & redeployment
- At runtime, sandbox wsps are retrieved from the solution gallery. Any required dll’s are extracted to a temp folder, loaded into memory and immediately deleted.
- It doesn’t look like you can debug sandboxed apps. There’s A) no place for PDB files and B) the user code service is a SP Service under central admin. No way to attach to it as far as I can see.
- Sandboxed apps can be load balanced