Archive for the ‘Beta’ Category
Introducing Visual Tools for SharePoint
With Office 2010 and SharePoint 2010 being released today to MSDN subscribers it’s time to take the wraps off our latest creation: Visual Tools for SharePoint. Stunning name, very Microsoft inspired! ;-)
Get Visual Tools for Sharepoint FREE
The first 50 people to create accounts with Mindscape (click here to register) and then email their username and email address to jd@mindscape.co.nz will get a free license to Visual Tools for SharePoint. I’ll update this post when the give aways are complete, but be quick! UPDATE: All the free copies have been taken sorry!
What would you say…. you do?
Visual Tools for SharePoint is our first SharePoint related product and one of the exciting new features in SharePoint 2010 is “LINQ to SharePoint”. As many of you will know, our LightSpeed product has a fantastic LINQ provider and design surface for databases, so we are interested in all things LINQ. Microsoft have not made a visual design surface in Visual Studio for modeling things in SharePoint that you wish to query – you need to use an arcane command line tool. We love our Visual Studio integration and decided we could do better!
Here’s a screenshot (click to see it larger):
So you can connect to SharePoint from the VS 2010 Server Explorer, drag and drop your lists and have us create LINQ to SharePoint contexts and classes for you. No more mucking around with command lines and XML configuration files! This helps developers save time, makes generating your objects to query much easier and saves you having to leave Visual Studio 2010. Plus you can quickly update your models from the SharePoint site so as to see what’s new or changed.
What do you think?
With any new product we need end user feedback – that’s why we’re giving away copies to the first 50 users. You’ll get immediate access to the beta and a free copy of the toolkit when the retail version ships. (You’ll need Visual Studio 2010 Professional or above, and SharePoint 2010, to use the product.)
We want to evolve all of our products based on the feedback we receive and make all the changes available to users through our much loved nightly build process. Please let us know what you think in the comments on this post or in our forums :-)
So what are you waiting for? Sign up and email us your username and email address now!
LightSpeed 3.0 Beta Release
I’m pleased to announce the immediate availability of LightSpeed 3.0 Beta 1 to existing LightSpeed customers.
Huge querying enhancements
LightSpeed has undergone a massive overhaul of its internal querying capabilities. With 2.0 we included a LINQ provider that had support for most of the capabilities included in the core LightSpeed querying API. With 3.0 we’ve beefed up both the core querying capabilities and the LINQ API to support grouping, joining, and other such goodness.
Schema migrations support
LightSpeed now has its own Migrations framework! Chances are that if you’re working with a database then you’re having to manage your change scripts so we’ve tried to make this process more manageable.
And it just wouldn’t be a Mindscape product if it didn’t integrate into Visual Studio!

The reason for the integration is because of the great schema round tripping features in the LightSpeed Designer. If you’re making changes to your model then you’ll want to be capturing those changes into a migration to run on various other machines such as Test and Production machines. All you need to do is work as you normally would with the designer and when you’re ready select “Create Migration” from the Migrations menu and we’ll pick up all your changes and give you a choice of what schema changes you’d like to include in the migration.

When it comes time to deploy you can use the lsmigrate.exe utility to run your migrations when Visual Studio is not available. Alternatively, when you elect to run the migrations you can select the option to generate SQL instead.

Oh, and the migrations framework works with SQL Server, Oracle, MySQL, PostgreSQL, SQLite, SQL Server CE, VistaDB and DB2! Moving between database engines just got a lot easier!
Designer enhancements
We’ve made a load of improvements and fixes to the LightSpeed designer. In addition to handy ease-of-use features such as making it easier to zoom, importing common attribute namespaces, and copying a picture of your model for use in a Word or PowerPoint document, some of the major features are:
- Refactoring. You can perform a solution-wide rename of an entity or property, with the option to retain the existing database mapping. You can also have the designer create partial classes and convert generated property implementations to manual ones ready for customisation.
- XML documentation support for entities, properties and associations.
- Filtering the designer view. You can choose to view just a particular entity and its associated entities, or a particular subdomain, inheritance hierarchy or aggregate. This reduces the clutter on very large models and makes it easy to locate a particular entity with just a few keystrokes.
We’ve also rounded out support for the full range of LightSpeed modelling capabilities including designer support for through associations and database synchronisation support for inheritance hierarchies, plus a variety of smaller features that we’ll talk about in more detail in a later post.
Better support for legacy databases
Composite key lovers rejoice! LightSpeed now includes support for composite keys across the board – from the designer through to the core framework. This was one of the last remaining constraints that prevented some developers from using LightSpeed with a legacy database they couldn’t alter.
For environments where database access is restricted to stored procedures, LightSpeed also now supports CRUD procedures so you can specify how your entities are loaded and saved using stored procedures.
Testing enhancements
We’ve taken feedback on the testability of LightSpeed models and based improvements in 3.0 off that feedback.
Creating entities for testing has been more frustrating than it should be due to the restrictions on assigning the Id property. To resolve this LightSpeed now provides an EntityFactory class as part of the testing namespace.
Here’s an example of how to create an entity of a given state with a provided Id:
var entity1 = EntityFactory.Create(EntityState.Deleted, 15); var entity2 = EntityFactory.Create(EntityState.Default, 16); var entity3 = EntityFactory.Create(EntityState.Modified, 17); var entity4 = EntityFactory.Create(EntityState.New, 18);
Keep in mind that this is entirely for testing purposes and you should not use this code in your actual solution.
To help use these entities in a testing scenario we also now provide a TestUnitOfWork implementation. This is like mocking out a unit of work to return specified results when a query is run and is especially helpful if you’re not working with the Repository pattern. Each query method (e.g. Find()) has the ability to have the result set for it and therefore allows for testing completely in memory.
We will be pushing out blog posts on this soon + some new screen casts.
Granular change tracking
LightSpeed users have been asking for the ability to inspect that changes made to entities for some time and now they can. Entities now contain a public ChangeTracker. This change tracker can be used to examine what fields have been changed, what the original value was and what the new value is.
Change tracking is disabled by default due to the extra memory weight it can add to each entity however you can easily opt in an entity to be tracked:
customer.ChangeTracker.TrackingMode = ChangeTrackingMode.ChangesOnly; foreach(var change in customer.Changes) { Console.WriteLine("Property: {0}", change.Name); Console.WriteLine("Original value: {0}", change.OriginalValue); Console.WriteLine("Modified value: {0}", change.ModifiedValue); }
Database provider improvements
Support for SQL Server 2008: LightSpeed now provides first class support for SQL Server 2008 allowing users to leverage new data types such as SqlGeography. Previously developers could re-use the SQL2005 provider when targetting a SQL 2008 database however this didn’t allow for the use of user defined types such as the spatial types.
Support for IBM DB2: Complete designer and core support for DB2 comes out of the box with 3.0.
Support for VistaDB 4.0: VistaDB 4.0 is fresh out of the oven and LightSpeed 3.0 supports this new version along with VistaDB 3.x. This includes our rich designer integration for working with your VistaDB models.
We’ve also made numerous improvements to the other providers to ensure we’re shipping with the latest provider assemblies.
Much much more
This is an absolutely huge release and this blog post could go on for many more pages listing all the enhancements. Over the coming weeks we will be posting more details about all the changes that have been made to help you develop faster and improve the robustness of your solutions.
Where can I get it?
LightSpeed 3 Beta 1 is available to existing customers through the store. Take it for a spin and let us know what you find – we appreciate all the feedback you have!
![]()
BrainDump (1)
Community Code (1)
Events (7)
General (34)
Lab Samples (2)
LightSpeed (144)
MegaPack (3)
News (52)
NHibernate Designer (4)
Products (68)
Projects (4)
Screencast (6)
SharePoint (2)
Silverlight (7)
Silverlight Elements (14)
SimpleDB Management Tools (12)
Visual Studio (4)
VS File Explorer (6)
WPF (34)
WPF Diagramming (17)
WPF Elements (30)
WPF Property Grid (26)
![]()
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
December 2007
November 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007



Tagged as 



Posted by John-Daniel Trask on 22 April 2010

