Gibraltar Support

Start a new topic

VistaDB5 Version 5.05 use with Devexpress XPO v17.1

When importing tables from a vistadb5 db into XPO, the identity field of a primary key is not being recognized by XPO and hence XPO is not generating a suitable index value. XPO does recognize the Key but It is necessary to set the 'Is Identity' field to true or manually change [Key()] to [Key(true)]. Unfortunately, if regenerating the code using the XPO wizard, the wizard will then remove the 'Is Identity' or 'true' parameter.


The issue seems to only raise it's head when trying to save more than one table insert at a time.


Presumably an XPO issue but I wonder if it may also be an issue with VistaDB5 as I recall it was an issue with VistaDB4 but was fixed.




DevEx have advised they are contacting you to discuss a workaround. Can you keep me informed please.

 

Absolutely, we'll let you know. We haven't heard anything yet.

If anyone else runs into this problem, that DevExpress thread is indicating that they have a fix for the issue (at least as a hotfix).

The fix doesn't seem to work, at least on the VDB version I own ie v5.0.5.1338 . Assuming DevEx have been in contact with you, is the version of VDB in use a relevant factor?

 

Unfortunately, we haven't had anyone from DevEx contact us.  Conceptually there are some changes to how Identity was handled in 5.0 but I don't believe there's a difference within the 5.* line (Rob can confirm)

Summary for clarity.

DevEx's XPO ORMDataModelWizard fails to create it's internal code correctly when using VistaDB5. Specifically, it doesn't generate the correct code for autoincremented keys. DevEx have released a hotfix that will be incorporated into the next minor release viz 17.1.6 so you should not run the XPO ORMDataModelWizard using VistaDB5 prior to upgrading to the hotfix/v17.1.6 .

If you do use the ORMDataModelWizard to update a perfectly good XPO Data Model created with a VistaDB4 database then you will stuff up that model. You will need to recreate BOTH the database itself as well as generate a new model.

I'm pretty certain that if you don't update the XPO Model then a model created with a VistaDB4 version of the database will work OK with the VistaDB5 version of the same database.

 

Login to post a comment