Orchardcms Orchard.ContentManagement.Records.ContentItemRecord条目中的空id(发生异常后不刷新会话)

Orchardcms Orchard.ContentManagement.Records.ContentItemRecord条目中的空id(发生异常后不刷新会话),orchardcms,orchardcms-1.7,Orchardcms,Orchardcms 1.7,我创建了一个新的电影内容类型,并附加了一个分类字段(使用迁移)。使用IEventHandlerEnabled事件创建分类名称和术语 我登录到仪表板,可以看到使用所有术语创建的分类字段 现在,我尝试创建一个新的MovieContentItem,我得到以下异常 有什么想法吗 2014-02-27 13:44:38,996 [24] Orchard.Exceptions.DefaultExceptionPolicy - An unexpected exception was caught NHiber

我创建了一个新的电影内容类型,并附加了一个分类字段(使用迁移)。使用
IEventHandler
Enabled
事件创建分类名称和术语

我登录到仪表板,可以看到使用所有术语创建的分类字段

现在,我尝试创建一个新的
Movie
ContentItem,我得到以下异常

有什么想法吗

2014-02-27 13:44:38,996 [24] Orchard.Exceptions.DefaultExceptionPolicy - An unexpected exception was caught
NHibernate.Exceptions.GenericADOException: could not insert: [Orchard.ContentManagement.Records.ContentItemRecord][SQL: INSERT INTO Orchard_Framework_ContentItemRecord (Data, ContentType_id) VALUES (?, ?)] ---> System.Data.SqlServerCe.SqlCeLockTimeoutException: SQL Server Compact timed out waiting for a lock. The default lock time is 2000ms for devices and 5000ms for desktops. The default lock timeout can be increased in the connection string using the ssce: default lock timeout property. [ Session id = 2,Thread id = 9324,Process id = 4488,Table name = Orchard_Framework_ContentItemRecord,Conflict type = x lock (x blocks),Resource = PAG (idx): 1066 ]
   at System.Data.SqlServerCe.SqlCeCommand.ProcessResults(Int32 hr)
   at System.Data.SqlServerCe.SqlCeCommand.ExecuteCommandText(IntPtr& pCursor, Boolean& isBaseTableCursor)
   at System.Data.SqlServerCe.SqlCeCommand.ExecuteCommand(CommandBehavior behavior, String method, ResultSetOptions options)
   at System.Data.SqlServerCe.SqlCeCommand.ExecuteNonQuery()
   at NHibernate.AdoNet.AbstractBatcher.ExecuteNonQuery(IDbCommand cmd) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\AdoNet\AbstractBatcher.cs:line 203
   at NHibernate.Id.Insert.AbstractSelectingDelegate.PerformInsert(SqlCommandInfo insertSQL, ISessionImplementor session, IBinder binder) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Id\Insert\AbstractSelectingDelegate.cs:line 38
   --- End of inner exception stack trace ---
   at NHibernate.Id.Insert.AbstractSelectingDelegate.PerformInsert(SqlCommandInfo insertSQL, ISessionImplementor session, IBinder binder) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Id\Insert\AbstractSelectingDelegate.cs:line 47
   at NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object[] fields, Boolean[] notNull, SqlCommandInfo sql, Object obj, ISessionImplementor session) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Persister\Entity\AbstractEntityPersister.cs:line 2575
   at NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object[] fields, Object obj, ISessionImplementor session) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Persister\Entity\AbstractEntityPersister.cs:line 3035
   at NHibernate.Action.EntityIdentityInsertAction.Execute() in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Action\EntityIdentityInsertAction.cs:line 75
   at NHibernate.Engine.ActionQueue.Execute(IExecutable executable) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Engine\ActionQueue.cs:line 136
   at NHibernate.Event.Default.AbstractSaveEventListener.PerformSaveOrReplicate(Object entity, EntityKey key, IEntityPersister persister, Boolean useIdentityColumn, Object anything, IEventSource source, Boolean requiresImmediateIdAccess) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\AbstractSaveEventListener.cs:line 259
   at NHibernate.Event.Default.AbstractSaveEventListener.PerformSave(Object entity, Object id, IEntityPersister persister, Boolean useIdentityColumn, Object anything, IEventSource source, Boolean requiresImmediateIdAccess) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\AbstractSaveEventListener.cs:line 187
   at NHibernate.Event.Default.AbstractSaveEventListener.SaveWithGeneratedId(Object entity, String entityName, Object anything, IEventSource source, Boolean requiresImmediateIdAccess) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\AbstractSaveEventListener.cs:line 119
   at NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.SaveWithGeneratedOrRequestedId(SaveOrUpdateEvent event) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\DefaultSaveOrUpdateEventListener.cs:line 162
   at NHibernate.Event.Default.DefaultSaveEventListener.SaveWithGeneratedOrRequestedId(SaveOrUpdateEvent event) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\DefaultSaveEventListener.cs:line 27
   at NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.EntityIsTransient(SaveOrUpdateEvent event) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\DefaultSaveOrUpdateEventListener.cs:line 148
   at NHibernate.Event.Default.DefaultSaveEventListener.PerformSaveOrUpdate(SaveOrUpdateEvent event) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\DefaultSaveEventListener.cs:line 21
   at NHibernate.Event.Default.DefaultSaveOrUpdateEventListener.OnSaveOrUpdate(SaveOrUpdateEvent event) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\DefaultSaveOrUpdateEventListener.cs:line 53
   at NHibernate.Impl.SessionImpl.FireSave(SaveOrUpdateEvent event) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Impl\SessionImpl.cs:line 2673
   at NHibernate.Impl.SessionImpl.Save(Object obj) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Impl\SessionImpl.cs:line 485
   at Orchard.Data.Repository`1.Create(T entity) in c:\Dev\Repos\orchardfeb\src\Orchard\Data\Repository.cs:line 96
   at Orchard.Data.Repository`1.Orchard.Data.IRepository<T>.Create(T entity) in c:\Dev\Repos\orchardfeb\src\Orchard\Data\Repository.cs:line 36
   at Orchard.ContentManagement.DefaultContentManager.Create(ContentItem contentItem, VersionOptions options) in c:\Dev\Repos\orchardfeb\src\Orchard\ContentManagement\DefaultContentManager.cs:line 511
   at Orchard.Core.Contents.Controllers.AdminController.CreatePOST(String id, String returnUrl, Action`1 conditionallyPublish) in c:\Dev\Repos\orchardfeb\src\Orchard.Web\Core\Contents\Controllers\AdminController.cs:line 233
   at Orchard.Core.Contents.Controllers.AdminController.CreateAndPublishPOST(String id, String returnUrl) in c:\Dev\Repos\orchardfeb\src\Orchard.Web\Core\Contents\Controllers\AdminController.cs:line 224
   at lambda_method(Closure , ControllerBase , Object[] )
   at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters)
   at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass13.<InvokeActionMethodWithFilters>b__10()
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
   at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass13.<>c__DisplayClass15.<InvokeActionMethodWithFilters>b__12()
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
   at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass13.<>c__DisplayClass15.<InvokeActionMethodWithFilters>b__12()
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
2014-02-27 13:44:39,054 [24] NHibernate.AssertionFailure - An AssertionFailure occurred - this may indicate a bug in NHibernate or in your custom types.
NHibernate.AssertionFailure: null id in Orchard.ContentManagement.Records.ContentItemRecord entry (don't flush the Session after an exception occurs)
2014-02-27 13:44:38996[24]Orchard.Exceptions.DefaultExceptionPolicy-捕获到意外异常
NHibernate.Exceptions.GenericADOException:无法插入:[Orchard.ContentManagement.Records.ContentItemRecord][SQL:插入到Orchard_Framework_ContentItemRecord(数据,ContentType_id)值(?,)]-->System.Data.SqlServerCe.SqlCeLockTimeoutException:SQL Server Compact在等待锁定时超时。设备的默认锁定时间为2000ms,台式机的默认锁定时间为5000ms。可以使用ssce:default lock timeout属性在连接字符串中增加默认锁定超时。[会话id=2,线程id=9324,进程id=4488,表名=Orchard\u Framework\u ContentItemRecord,冲突类型=x锁(x块),资源=PAG(idx):1066]
位于System.Data.SqlServerCe.SqlCeCommand.ProcessResults(Int32小时)
位于System.Data.SqlServerCe.SqlCeCommand.ExecuteCommandText(IntPtr&pCursor、Boolean&isBaseTableCursor)
位于System.Data.SqlServerCe.SqlCeCommand.ExecuteCommand(命令行为、字符串方法、结果选项)
位于System.Data.SqlServerCe.SqlCeCommand.ExecuteNonQuery()处
在c:\Users\sebros\Documents\myprojects\NHibernate core\src\NHibernate\adonnet\AbstractBatcher.ExecuteNonQuery(IDbCommand cmd)中的NHibernate.adonnet.AbstractBatcher.ExecuteNonQuery(IDbCommand cmd):第203行
在c:\Users\sebros\Documents\My Projects\NHibernate core\src\NHibernate\Id\Insert\AbstractSelectingDelegate.PerformInsert(SqlCommandInfo insertSQL,ISessionImplementor session,IBinder binder)中的NHibernate.Id.Insert.AbstractSelectingDelegate.PerformInsert(SqlCommandInfo insertSQL,ISessionImplementor
---内部异常堆栈跟踪的结束---
在c:\Users\sebros\Documents\My Projects\NHibernate core\src\NHibernate\Id\Insert\AbstractSelectingDelegate.PerformInsert(SqlCommandInfo insertSQL,ISessionImplementor session,IBinder binder)中的NHibernate.Id.Insert.AbstractSelectingDelegate.cs:第47行
在c:\Users\sebros\Documents\My Projects\NHibernate core\src\NHibernate\Persister\Entity\AbstractEntityPersister.Insert(对象[]字段,布尔值[]notNull,SqlCommandInfo sql,对象obj,ISessionImplementor会话)中插入(对象[]字段,布尔值[]notNull,SqlCommandInfo sql,对象obj,ISessionImplementor会话):第2575行
在c:\Users\sebros\Documents\myprojects\NHibernate core\src\NHibernate\Persister\Entity.AbstractEntityPersister.Insert(对象[]字段、对象obj、ISessionImplementor会话)中插入(对象[]字段、ISessionImplementor会话):第3035行
在c:\Users\sebros\Documents\My Projects\NHibernate core\src\NHibernate\Action\EntityIdentityInsertAction.Execute()中的NHibernate.Action.EntityIdentityInsertAction.Execute()处:第75行
在c:\Users\sebros\Documents\myprojects\NHibernate core\src\NHibernate\Engine\ActionQueue.Execute中的NHibernate.Engine.ActionQueue.Execute(IEExecutable可执行文件):第136行
在NHibernate.Event.Default.AbstractSaveEventListener.PerformSaveOrReplicate(对象实体、EntityKey键、IEntityPersister持久化器、布尔UseIdentity列、对象任意项、IEventSource源、布尔RequiremediatedAccess)在c:\Users\sebros\Documents\My Projects\nhibernate core\src\nhibernate\Event\Default\AbstractSaveEventListener.cs中:第259行
在c:\Users\sebros\Documents\My Projects\NHibernate core\src\NHibernate\Event\Default\AbstractSaveEventListener.PerformSave(对象实体、对象id、IENTypersister持久化器、布尔useIdentityColumn、对象任意项、IEventSource、布尔RequiremediatedAccess)中
在c:\Users\sebros\Documents\My Projects\NHibernate core\src\NHibernate\Event\Default\AbstractSaveEventListener.SaveWithGeneratedId(对象实体、字符串entityName、对象任意项、IEventSource源、布尔RequiresimmediatedAccess)中
在c:\Users\sebros\Documents\myprojects\NHibernate core\src\NHibernate\Event\Default\Default\DefaultSaveOrUpdateEventListener.SaveWithGeneratedOrRequestedId(SaveOrUpdateEvent事件)中的NHibernate.Event.Default
在c:\Users\sebros\Documents\myprojects\NHibernate core\src\NHibernate\Event\Default保存事件监听器.SaveWithGeneratedOrRequestedId(保存或更新事件)中的NHibernate.Event.DefaultSaveEventListener.SaveWithGeneratedOrRequestedId(保存或更新事件):第27行
在c:\Users\sebros\Documents\myprojects\NHibernate core\src\NHibernate\Event\Default\DefaultSaveOrUpdateEventListener.EntityIsTransient(SaveOrUpdateEvent事件)中的NHibernate.Event.Default
在c:\Users\sebros\Documents\myprojects\NHibernate core\src\NHibernate\Event\Default\DefaultSaveEventListener.PerformSaveOrUpdate(SaveOrUpdateEvent事件)中的NHibernate.Event.Default
在c:\Users\sebros\Documents\myprojects\NHibernate core\src\NHibernate\Event\Default\DefaultSaveOrUpdateEventListener.OnSaveOrUpdate(SaveOrUpdateEvent事件)中的NHibernate.Event.Default.onsaveorupdateeventlistener.cs:第53行
在c:\Users\sebros\Documents\My Projects\NHibernate core\src\NHibernate\Impl\SessionImpl.FireSave中的NHibernate.Impl.SessionImpl.FireSave(SaveOrUpdateEvent事件)中:第2673行
在c:\Users\sebros\Documents\myprojects\NHibernate core\src\NHibernate\Impl\SessionImpl.cs中的NHibernate.Impl.SessionImpl.Save(objectobj)处:第485行
在Orchard.Data.Repository`1.在c:\Dev\Repos\orchardfeb\src\Orchard\Data\Repository.cs中创建(T实体):第96行
在c中的Orchard.Data.Repository`1.Orchard.Data.IRepository.Create(T实体)