문제

SharePoint Online을 개발하면 프로그램에서 프로그래밍 방식으로 연락처 목록을 만들었습니다. 이제 목록에 추가 된 열을 삭제하고 싶습니다. 그래서 나는 다음과 같은 코드를 가지고있다 :

var lastName = list.Fields.GetByInternalNameOrTitle("Last Name");
if (lastName != null) {
    lastName.DeleteObject();
}
.

. ...에 .

clientContext.ExecuteQuery();
.

그러나 이것은 열을 삭제하지 않습니다. 사실, try {...} catch {...}에 포함 된 경우 다음 예외 메시지가 나타납니다.

오브젝트의 현재 상태로 인해 작동이 유효하지 않습니다.

Field 객체의 다양한 속성을보고 CanBeDeleted 속성은 false이므로 위의 메시지의 원인이라고 가정 할 수 있습니다. 그러나이 속성은 또한 읽기 전용이므로 강제로 삭제할 수 없습니다.

그래서 제 질문은 다음과 같은 열을 삭제하는 것에 대해 어떻게해야합니까? Visual Studio를 사용하여 내 앱에 연락처 목록을 추가하면 툴링을 통해 이러한 열을 삭제할 수 있으므로 코드에서 동일한 작업을 수행하고 싶습니다.

도움이 크게 감사 할 것입니다.

도움이 되었습니까?

해결책

필드를 삭제할 수 있는지 여부를 나타내는 것처럼 CanBedeleted 속성이있는 필드를 삭제할 수 없습니다.

다른 팁

필드를 읽지 않도록 필드를 설정하는 것으로 시도해보십시오

c # :

f.ReadOnlyField = false;
f.Update(true);
s.Lists[ListName].Update();
f.Delete();
.

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