문제

파일 스테이플 링 솔루션을 작성하려고하면 사용자 정의 브랜딩을 모든 새 사이트 모음으로 만들어냅니다.다음 코드는 내 이벤트 수신기에 있습니다.

    public override void FeatureActivated(SPFeatureReceiverProperties properties)
    {
        using(SPSite sitecollection = properties.Feature.Parent as SPSite)
        {
            using (SPWeb site = sitecollection.OpenWeb())
            {
                foreach (SPWeb web in sitecollection.AllWebs)
                {
                    try
                    {
                        SPList list = web.Lists.TryGetList("Composed Looks");
                        foreach (SPListItem item in list.Items)
                        {
                            if(item.Title != "Current" || item.Title != "Dynetics")
                            {
                                item.Delete();
                                item.Update();
                            }
                        }
                    }
                    finally
                    {
                        if(web != null)
                        {
                            web.Dispose();
                        }
                    }
                }
            }
        }
    }
.

그러나 해결책을 배포 할 때 오류가 발생합니다 :

Error occurred in deployment step 'Activate Features': Item does not exist. It may have been deleted by another user.
.

왜 ??

도움이 되었습니까?

해결책

코드를 조사하여 문제가

이라고 생각합니다.
item.Delete();
item.Update();
.

삭제 후 항목을 업데이트하고 있으면 삭제 후 항목을 업데이트 할 필요가 없습니다.

삭제 된 항목을 업데이트 할 수 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 sharepoint.stackexchange
scroll top