This question is locked. New answers and comments are not allowed.
Since I updated OpenAccess to version 2008.3 I get an exception on first call of GetObjectById
Telerik.OpenAccess.IObjectScope scope = ObjectScopeProvider1.ObjectScope();
scope.Transaction.Begin();
int classId = scope.Database.GetClassId(typeof(Model.Material));
string idString = String.Format("{0}-{1}", classId.ToString(), checkOutBasketItem.Id);
Telerik.OpenAccess.IObjectId id = Telerik.OpenAccess.Database.OID.ParseObjectId(typeof(Model.Material), idString);
material = scope.GetObjectById(id) as Model.Material;
scope.Transaction.Rollback();
Material is a base class and id is from an object of subclass type
Exception details:
Telerik.OpenAccess.OpenAccessException was unhandled
Message="Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt."
Source="Telerik.OpenAccess"
CanRetry=false
StackTrace:
bei Telerik.OpenAccess.SPI.Backends.ThrowException(Exception e)
bei Telerik.OpenAccess.RT.ExceptionWrapper.Throw()
bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.handleException(Exception x)
bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.getObjectById(Object oid, Boolean validate)
bei OpenAccessRuntime.DataObjects.UnsynchronizedPMProxy.getObjectById(Object o, Boolean b)
bei Telerik.OpenAccess.RT.ObjectScope.GetObjectById(IObjectId oid)
....
Inner Exception:
" bei OpenAccessRuntime.DataObjects.PCStateMan.setLoadRequired()\r\n bei OpenAccessRuntime.DataObjects.PCStateMan.init(OID noid, ClassMetaData cmd, State aState, OpenAccessPersistenceManagerImp rpm)\r\n bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.reManage(OID oid, State state)\r\n bei OpenAccessRuntime.DataObjects.LocalPMCache.addState(OID key, State value_Renamed, Boolean manage, PCStateMan[] addSm)\r\n bei OpenAccessRuntime.DataObjects.LocalPMCache.add(OID oid, State state, PCStateMan[] sms)\r\n bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.addAndReturnFirstDirect(StatesReturned container)\r\n bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.getStateMan(OID aOID, FetchPlanIF fPlan, FieldMetaData fmd)\r\n bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.getObjectById(Object oid, Boolean validate)"
Any idea ?
Thanks in advance, Markus
Telerik.OpenAccess.IObjectScope scope = ObjectScopeProvider1.ObjectScope();
scope.Transaction.Begin();
int classId = scope.Database.GetClassId(typeof(Model.Material));
string idString = String.Format("{0}-{1}", classId.ToString(), checkOutBasketItem.Id);
Telerik.OpenAccess.IObjectId id = Telerik.OpenAccess.Database.OID.ParseObjectId(typeof(Model.Material), idString);
material = scope.GetObjectById(id) as Model.Material;
scope.Transaction.Rollback();
Material is a base class and id is from an object of subclass type
Exception details:
Telerik.OpenAccess.OpenAccessException was unhandled
Message="Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt."
Source="Telerik.OpenAccess"
CanRetry=false
StackTrace:
bei Telerik.OpenAccess.SPI.Backends.ThrowException(Exception e)
bei Telerik.OpenAccess.RT.ExceptionWrapper.Throw()
bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.handleException(Exception x)
bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.getObjectById(Object oid, Boolean validate)
bei OpenAccessRuntime.DataObjects.UnsynchronizedPMProxy.getObjectById(Object o, Boolean b)
bei Telerik.OpenAccess.RT.ObjectScope.GetObjectById(IObjectId oid)
....
Inner Exception:
" bei OpenAccessRuntime.DataObjects.PCStateMan.setLoadRequired()\r\n bei OpenAccessRuntime.DataObjects.PCStateMan.init(OID noid, ClassMetaData cmd, State aState, OpenAccessPersistenceManagerImp rpm)\r\n bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.reManage(OID oid, State state)\r\n bei OpenAccessRuntime.DataObjects.LocalPMCache.addState(OID key, State value_Renamed, Boolean manage, PCStateMan[] addSm)\r\n bei OpenAccessRuntime.DataObjects.LocalPMCache.add(OID oid, State state, PCStateMan[] sms)\r\n bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.addAndReturnFirstDirect(StatesReturned container)\r\n bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.getStateMan(OID aOID, FetchPlanIF fPlan, FieldMetaData fmd)\r\n bei OpenAccessRuntime.DataObjects.OpenAccessPersistenceManagerImp.getObjectById(Object oid, Boolean validate)"
Any idea ?
Thanks in advance, Markus