2014-07-23 2 views
0

PowerShell 및 사이트 기능을 사용하여 기존 또는 이전 사이트 열 (대부분)을 업데이트하려고했습니다. SharePoint Designer 또는 C# 코드 또는 ID 속성이없는 $web.Fields.AddFieldAsXml을 사용하여 사이트 열을 추가하면 모두 정상적으로 작동합니다. 그러나 이전에 배포 한 GUID를 사용하면 내 프로젝트의 필드 GUID가 유지되어야하므로 SharePoint에서 오류를보고합니다.SharePoint 사이트 열을 만들 수 없습니다.

이것은 내가 오류 사용하여 PowerShell을 얻는 방법은 다음과 같습니다 (ID는 고유 한 값입니다)

<Field ID="{00000000-0000-0000-0000-000000000000}" Name="CustomField" DisplayName="Custom Field" Type="Boolean" Required="FALSE" Overwrite="TRUE" OverwriteInChildScopes="TRUE" Group="Custom Columns"> </Field>

$web.Fields.AddFieldAsXml($xml)

Exception calling "AddFieldAsXml" with "1" argument(s): "" At line:1 char:1 + $web.Fields.AddFieldAsXml($xml) + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : SPException

을하지만 ID 속성을 제거하거나 새 ID를 사용하는 경우 예상대로 열을 생성합니다.

기능을 활성화해도 마찬가지입니다. 로그는 보여줍니다

System.Runtime.InteropServices.COMException: Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED)), StackTrace: at Microsoft.SharePoint.SPFieldCollection.FetchFieldsFromWeb()

나는이 사이트 모음에 손상 필드이었다 의심

Unable to locate the xml-definition for FieldName with FieldId '00000000-0000-0000-0000-000000000000', exception: Microsoft.SharePoint.SPException: Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED)) ---> System.Runtime.InteropServices.COMException: Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED))

그래서 난 몇 열을 삭제하지만 지금은 다시 추가하고 콘텐츠 형식을 업데이트 할 수 없습니다 - 도와주세요!

+0

"삭제 된"필드는 PowerShell, SPD, Visual Studio 중 하나를 사용하여 찾을 수 없습니다 .. – Jay

+0

이렇게 추가 하시겠습니까? http://msdn.microsoft.com/en-us/library/ff798370.aspx#Y209'web.AvailableFields.Contains (MyFieldId)'가 이미 사용 중인지 확인하십시오. – HAL9256

+0

@ HAL9256 나는 이미 시도했다. C# 코드를 사용하면 "삭제 된"열의 GUID가 같은 열을 추가 할 때 오류가 반환됩니다. $ web.AvailableFields.ContainsFieldWithStaticName ("CustomField") return False – Jay

답변

0

이전에 삭제 한 것으로 생각되는 항목을 추가 할 수없는 관련 문제가있었습니다.

삭제 된 열은 사이트 휴지통에 먼저 저장되어있는 것으로 나타났습니다.

빈을 비운 후에도 삭제 된 열을 계속 추가 할 수 없습니다.

이것은 결국 사이트 모음 휴지통에 삭제 된 열이 여전히 남아 있기 때문에 발생했습니다.

은 참조 : SP recycle bins

이 문제가 관련이있을 수 있을까요?

+0

웹 휴지통과 사이트 모음 휴지통을 모두 비우려고했습니다. 웹 응용 프로그램 설정에서 휴지통을 비활성화 한 후에도 여전히 동일한 오류를 반환합니다. – Jay

관련 문제