Archive for July, 2009
Transient fields and EntityState
Tagged as LightSpeedIn LightSpeed 2.2, any change to an entity — at least, any change that goes through the Entity.Set method — results in the entity going into the Modified state. From the point of view of “has the object changed,” this makes sense, because the object state has indeed changed.
If the entity contains transient fields, however, things get a bit murkier. The trouble is that LightSpeed also uses the EntityState to decide whether an entity needs saving. So in LightSpeed 2.2, changing a transient field — if the change is made through the Set method — results in the entity being saved, even if none of its persistent fields have changed. This is clearly wasteful. It’s also a bit weird, because the entity goes back from Modified to Default even though no changes have actually been saved for it.
So we’re making a change in the nightly builds, so that entities will go into the Modified state only if you make a change that needs saving to the database. This will avoid unnecessary saves to entities with only transient changes. However, it does mean a slight change to the meaning of the Default and Modified states for objects with transient fields: the state will now reflect only the status of persistent fields.
In practice, this change is unlikely to affect you. If your entities don’t have transient fields, you won’t be affected at all. If you don’t use the EntityState property in your own code, you won’t be affected either. However, if you’re actively using the EntityState of entities with transient fields, and it’s important to you to capture cases even where the modifications won’t be persisted, please let us know. We’ll be happy to advise on alternative approaches, or to add support for your scenario, once we know what you’re trying to achieve.
LightSpeed 3 Status Update
As many of you know, we’ve been incredibly busy working on LightSpeed 3.0 over the last few months. We thought it was important to give everyone an update on the time frames for the LightSpeed 3.0 beta.
Our original time frame was to have a beta available around mid year, but this hasn’t worked out as planned. Many of the LightSpeed 3.0 features have been implemented however core query enhancements, which we know will be a key feature of 3.0 for many customers, have taken longer than anticipated and we also want to add some more polish to other features.
Rather than rush out a beta that we know is very rough around the edges we are going to delay the beta release until it’s feature complete. We hope to provide an update on the time frame for the LightSpeed 3.0 beta in the near future.
We do push some of the LightSpeed 3.0 enhancements into the nightly builds for 2.x. These primarily focus on the designer enhancements that Ivan has been blogging about recently.
Multi-value attributes in SimpleDB Management Tools
Tagged as SimpleDB Management ToolsSimpleDB, unlike a relational database, allows you to store multiple values against a single attribute. For example, in a Books domain, the Author attribute might contain multiple values to represent a book with several authors.
We’ve now added support for this feature to SimpleDB Management Tools. The latest version sports a new Edit Values button which pops up a dialog where you can add and delete values as well as editing them. In the grid, multi-valued attributes are shown with their number of values, and you can click the cell to edit the values without needing to go to the Edit Values toolbar button.
Of course, if you only want a single value against an attribute, you can still edit it normally in the SimpleDB Management Tools grid. You only need the dialog if you’re managing multiple values.
Want to give it a try? Download the free trial edition, or if you already own SimpleDB Management Tools then get the upgrade from the store.
![]()
BrainDump (1)
Community Code (1)
Events (6)
General (27)
Lab Samples (2)
LightSpeed (112)
MegaPack (3)
News (37)
Products (51)
Projects (4)
Screencast (6)
Silverlight (1)
Silverlight Elements (1)
SimpleDB Management Tools (8)
Visual Studio (4)
VS File Explorer (4)
WPF (28)
WPF Diagramming (11)
WPF Elements (15)
WPF Property Grid (20)
![]()
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




Posted by Ivan Towlson on 28 July 2009



