Here it is, LightSpeed 2.1 is fresh from the oven and ready for download!
A quick run-through of the changes:
Search Engine
Want full text search? Your database engine doesn’t support it? LightSpeed 2.1 is here to help.
Shipping with LightSpeed 2.1 is a full provider-model based full text search engine built on the fantastic Lucene.Net search engine. This means that the full text search is completely independent of your choice in database and has incredible performance.
Query query = new Query(); query.SearchQuery = "video"; using (var unitOfWork = LightSpeedContext.BeginUnitOfWork()) { unitOfWork.Find<Comment>(query); }
More advanced search engine capabilities exist, for example, being able to search over multiple entity types at once, perform a query that matches between the search index and data only stored in your database (e.g. “find me all entities that have the word ‘car’ in them and who have an owner id of 99″).
We’re excited to see how users will make use of this functionality and appreciate any feedback on this new feature and your ability to perform Google-style queries with your object relational mapper.
The search provider infrastructure is extensible so if you don’t want to use Lucene.Net you are welcome to plug-in your own full text search provider.
VistaDB, Firebird and SQL Server Compact Support
Adding to the existing databases that LightSpeed supports, now you can work with VistaDB, Firebird and SQL Server Compact Edition.
Designer Improvements
We have been blown away by the feedback on our Visual Studio 2008 integration – much of it has been praise along the lines of “wow – a designer that doesn’t suck!” but with all the different databases and versions out there, some folks have run into issues with their particular databases. We’ve heard that feedback and been incorporating it throughout the life span of LightSpeed 2.0, with the result that the designer in 2.1 is faster, smarter and more robust, so that the out-of-the-box experience for developers is as hassle free as possible.
We’ve also rounded out designer support for the core LightSpeed feature set, and added the ability for projects to use their own custom templates for generating the entity code.
Delete and update queries
Previously when deleting data you were required to retrieve an entity and then delete it with a unit of work. Fetching data just to delete it went against our performance focused view of the world so we made things more efficient – simply pass in a query and delete all data matching that query. The old mechanism still exists for backward compatibility but if you’re eager to keep making your code as fast as possible, you now have more options.
var query = new Query(typeof(Contribution)) {Identifier = 1}; _unitOfWork.Remove(query); _unitOfWork.SaveChanges(true);
There’s a similar feature for updates, which allows you to modify database data without having to download it into an entity.
Many more little tweaks
There have been many other small tweaks to improve the development experience that aren’t listed here. Click here to read the complete LightSpeed 2.1 change log.
What’s next?
We have plans for the next version of LightSpeed, including first class WCF support, stored procedure support and other, more secret, new features to help developers create better solutions faster. What is super helpful however is getting feedback on things you would like to see in the next version – they can be far out ideas or just little things that annoy you about building domain driven applications today. So, leave a comment, we’d love to hear your thoughts!
[...] The guys at Mindscape have announced LightSpeed 2.1 Released! [...]
Awesome news JD, been waiting for official 2.1 to make a go of selling to mgmt. I love this product, keep up the good work!
Thanks for the comment Eric, as well as the blog post – much appreciated.
Regarding Stored Procedures, give us a couple of days ;-)
– JD
[...] had a lot of requests for stored procedure support in LightSpeed, and now that 2.1 is out the door we’ve started to work on this functionality. So we’re pleased to announce that the [...]
[...] announced the release of LightSpeed 2.1. LightSpeed is a persistence layer tool that provides good integration with Visual [...]
I’m currently evaluating ORM products, specifically Entity Framework 3.5 when I came across a blog recommending your product. My first test with Firebird 2.5 database produced the following errors below.
TIA
John
Exception while processing Server Explorer drag: Mindscape.LightSpeed.Generator.Model.GenerationException: Unsupported Server Explorer connection type ‘FirebirdSql.Data.FirebirdClient.FbConnection’
at Mindscape.LightSpeed.Generator.Integration.Dsl.Differencing.Utils.GeneratorUtils.GetProviderType(Object connection, ProviderType hint)
at Mindscape.LightSpeed.Generator.Integration.LightSpeedDataSourceBase`1.GetProvider(IGenerationLog log, IDbDataTypeResolver typeResolver)
at Mindscape.LightSpeed.Generator.Integration.EntityExtractor.PopulateTypeModel(ILightSpeedDataSource connection, IList`1 tableNames, Boolean pluralisedInDatabase)
at Mindscape.LightSpeed.Generator.Integration.EntityBuilder.AddTablesToModel(Model model, ILightSpeedDataSource connection, IEnumerable`1 tableNames, IGenerationLog log)
at Mindscape.LightSpeed.Generator.Integration.DiagramDragDropHandler.c__DisplayClass4.b__3(DragObject dragObject, IGenerationLog log)
at Mindscape.LightSpeed.Generator.Integration.ServerExplorer.IfIsServerExplorerDrag(DragEventArgs e, DragAction action)
Hello John,
Per the documentation (http://www.mindscape.co.nz/products/lightspeed/Help/Help%20Topics/Databases/Firebird.html) we do not support Firebird in the designer, and as of 3.0 are no longer enhancing Firebird support in the LightSpeed runtime. Sorry. We have no immediate plans to resume Firebird development but will continue to monitor customer feedback on this — thanks for letting us know. By the way, if you still decide to continue evaluating LightSpeed anyway, you can post issues or queries in the support forum (http://www.mindscape.co.nz/forums/Forum.aspx?ForumID=9) rather than relying on the blog.
Leave a Reply