2016-07-28 5 views
0

저희는 Orchard CMS v1.8로 구축 된 웹 사이트를 운영하고 있습니다. 콘텐츠를 관리하는 사람이 페이지 변경 내용을 저장할 수 없었던 몇 가지 사례가있었습니다. 다음과 같은 오류 메시지가 나타납니다.과수원 CMS 중복 콘텐츠 오류

처리되지 않은 예외가 발생하여 요청이 종료되었습니다. 페이지를 새로 고침하십시오. Orchard.ContentManagement.DefaultContentManager에서 순서가 System.Linq.Enumerable.SingleOrDefault [TSource] (IEnumerable을 1 source, Func이 술어)에 둘 이상의 일치하는 요소를 포함 : 오류가 계속되면, 시퀀스는 하나 개 이상의 일치하는 요소 System.InvalidOperationException를 포함 돌아가 C : \ Orchard \ src \ Orchard \ ContentManagement \ DefaultContentManager.cs : Orchard.ContentManagement.DefaultContentManager.Get (int32 id, VersionOptions 옵션, QueryHints 힌트)에서 450 행을 C : \ Orchard \ src \에있는 .BuildNewVersion (ContentItem existingContentItem) Orchard \ ContentManagement \ DefaultContentManager.cs : Orchard.Core.Controller.AdminController.EditPOST에서 234 행 (System32.ContentController.ControllerControllerControllerContext, ActionDescriptor, actionDescriptor , IDictionary 2 parameters) at System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult 2.CallEndDelegate (IAsyncResult asyncResult) System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod (IAsyncResult asyncResult) System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.b__3f() (System.Web.Mvc.Async.AsyncControllerActionInvoker)에서 호출합니다. AsyncInvocationWithFilters. <> System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters에서 c__DisplayClass48.b__41(). <> System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters에서 c__DisplayClass48.b__41(). <> c__DisplayClass48.b__41은()

내가 여분의 기록 (들)을 elimiate하기 위해 무엇을 할 수는 SingleOrDefault 반환()를 호출? Orchard의 데이터베이스 구조를 충분히 알고 "컨텐츠 레코드"를 찾을 수는 있지만, 찾을 수 있다면 추가 레코드를 삭제할 수 있습니다.

감사합니다!

답변

2

값이 Latest = 1 인 동일한 콘텐츠 항목의 버전이 두 개 이상 있습니다 (orchard가이 값을 사용하여 콘텐츠 항목의 최신 버전을 결정 함).이 오류로 인해 다음 쿼리를 실행하여 검색 할 수 있습니다 중복 버전 :

SELECT * 
FROM Orchard_Framework_ContentItemVersionRecord 
WHERE ContentItemRecord_id = @Id 

는 값 Latest = 1, published = 1 만 한 기록이 있는지, 그리고 Number 중복없이 순서입니다.

FYI의 쿼리에서 오류가있는 콘텐츠 항목에 대해 Id을 사용합니다.

+0

이 상태가 어떻게되는지 알 수 있습니까? 나는 웹 사이트 관리자가 무언가를하고 있는지 또는 과수원에 버그가 있는지 알지 못합니다. –

+1

대다수의 사람이 같은 드래프트 가능한 콘텐츠 항목을 동시에 저장하면 버그가 발생합니다. 대부분의 경우 과수원에서는 올바르게 처리하지만 거의 그렇지 않을 경우 더 많은 도움이됩니다. – mdameer