Type is enhanced and registered, but not avaiable from the database clas meta data
Hi,
I am getting exception "Type is enhanced and registered, but not avaiable from the database clas meta data" in Sitefinity 7.2. The way to reproduce this is
Step 1. ) Navigate to Administration->Settings->Advanced->Data->set Enable Data Caching to false
Step 2 .) IISReset
Step 3.) Navigate to any ecommerce front end pages which will be calling any manager like var mgr = Catalogmanager.GetManager(); mgr.GetProducts().FirstOrDefault();
Step 4.) Ideally the exception can occur here. If not then repeat Step 1 and set Enable Data Caching to empty value.
Step 5.) IISReset
By now you should get the error most likely in the index page itself or the page where you are calling the instance of the CatalogManger. The worst part is this occurs even in Sitefinity backend pages too :-(
Hope this helps.
Thanks
Praneeth
Hello,
We provided an answer in the following forum thread:
www.sitefinity.com/.../type-is-enhanced-and-registered-but-not-avaiable-from-the-database-clas-meta-data
Please refer to it for further information.
Regards,
Stefani Tacheva
Telerik
Hi Stefani,
I did a successfuly migration to 7.3 after spending more than 24 hours as we had to fix Lucene search as the API is completely changed. However, now I am getting 2 exceptions of which I am attaching the errors. Please suggest a solution other than migrating to Sitefinity 8.0. We really do not have the time frame to accomodate the migration neither is our customer going to pay for the migration.
Thanks
Praneeth
Hello Praneeth,
Can you please recycle the application and let me know if the issue still persists?
What I can also suggest is to take a look at the following forum thread where the same issue related to the "Type is enhanced" error is being discussed. Can you please add the code sample in the Application_Error() method in the Global.asax file as described there.
On the if clause I'd suggest to also check the message for the InvalidOperationException as shown below:
if
(((err
is
ArgumentOutOfRangeException) && err.Message.StartsWith(
"Type is enhanced and registered"
)) || ((err
is
Telerik.OpenAccess.Exceptions.InvalidOperationException && err.Message.StartsWith (
"SingleFieldIdentity refers to unresolvable type"
))))