I was so impressed (or should I say curious) with the new BDC, Business Connectivity Services, that I went ahead and attended one more session that would go in more depth one the topic. So here´s a quick recap of that session.
Some investments that have been incorporated into BCS (and SharePoint as whole) include:
- Presentation – external lists, client support
- Connectivity – read/write from both client and server
Tooling/Maintainability – both SPD and VS make WSP packages so you can easily work with them both
The BCS runtime will be available both on the client as well on the server. This means that we have offline support on the client and the ability to synchronize the changes back to the server when we are online again.
In the area of search (BCS works with search) we have item level security.
The security measures are incorporated at indexing time which means that we will get better performance.
We can also index blobs (inside blobs) that live in the BCS so if we use external blob storage we can still search it.
On the client the communication is made through the BCS runtime that asks the BCS metadata store which then uses a connector to talk to the data source.
There are a couple of these connectors in the box but we can write our own custom one if needed. On the client there is also a client cache available which makes that perform even better.
Some capabilities of the BCS runtime:
- Read blobs (streaming support) – read and index streams (fe video) and play that through silverlight
- Batch read support
- Navigate and create associations. Relate entities.
- Bulk APIs (chunks of the read operations for large sets of data)
- Read/Write complex types – fe address. Convert an address to a string in SharePoint.
- Simple type conversion – all types are dotnet types in BCS
- API both for runtime and admin parts
I also saw a thing in the demos that made me wonder. When we use the BCS model project template in VS and add a new entity through the UI we get an entity service (like CustomerService.cs) class along for the ride. I have seen that somewhere else, in the new RIA services for ASP.NET/Silverlight…I wonder if this will also be available in SharePoint?