특정 콘텐츠 형식의 항목 업데이트 (폴더에서 파생)
-
09-12-2019 - |
문제
이벤트 처리기에서 일부 항목을 업데이트하는 데 몇 가지 문제가 발생합니다.
폴더에서 파생 된 콘텐츠 형식 Pratica의 폴더, 항목 및 폴더가있는 문서 라이브러리가 있으며 목록에 다른 항목의 속성이 동일합니다.
그래서 ... 내가 작성한 코드는 이벤트 핸들러에 의해 호출되며 특정 폴더의 모든 항목에 Mods를 적용하려고합니다 ..
이것은 항목 (예 : 파일 등)에서 작동합니다.하위 폴더를 분석하고 올바른 콘텐츠 형식을 찾으려면 컬럼을 수정하려고 시도하지만 수정이 적용되지 않지만 (예외없이 모든 명령어가 전달되지 않고 디버깅하지 않고) !!)
Suggeion?
고맙습니다!
private void RecursiveUpdateItemCliente(SPFolder folder, string RagioneSociale, Guid fieldRS)
{
foreach (SPFile spfile in folder.Files)
{
this.EventFiringEnabled = false;
spfile.Item[fieldRS] = RagioneSociale;
spfile.Item.SystemUpdate();
this.EventFiringEnabled = true;
}
foreach (SPFolder spfolder in folder.SubFolders)
{
if ((spfolder.Name != "Forms") && (spfolder.Item.ContentTypeId.IsChildOf(new SPContentTypeId(PRATICA))))
{
this.EventFiringEnabled = false;
folder.Item[fieldRS] = RagioneSociale;
folder.Item.SystemUpdate();
this.EventFiringEnabled = true;
}
RecursiveUpdateItemCliente(spfolder, RagioneSociale, fieldRS); }
}
. 해결책
private void RecursiveUpdateItemCliente(SPFolder folder, string RagioneSociale, Guid fieldRS)
{
foreach (SPFile spfile in folder.Files)
{
this.EventFiringEnabled = false;
spfile.Item[fieldRS] = RagioneSociale;
spfile.Item.SystemUpdate();
this.EventFiringEnabled = true;
}
foreach (SPFolder spfolder in folder.SubFolders)
{
if ((spfolder.Name != "Forms") && (spfolder.Item.ContentTypeId.IsChildOf(new SPContentTypeId(PRATICA))))
{
//I MUST GET SPFOLDER and NOT folder element...
this.EventFiringEnabled = false;
spfolder.Item[fieldRS] = RagioneSociale;
spfolder.Item.SystemUpdate();
this.EventFiringEnabled = true;
}
RecursiveUpdateItemCliente(spfolder, RagioneSociale, fieldRS); }
.
}
제휴하지 않습니다 sharepoint.stackexchange