문제

목록이 업데이트 될 때 해고되는 EventReceiver를 작성할 수 있습니까? EventReceiver에 지정 해야하는 ListMeplateId는 코드가 하나의 목록에 명시 적으로 만듭니다. 모든 사이트 목록에서 이벤트에 대한 코드를 실행하려면 어떻게해야합니까?

도움이 되었습니까?

해결책

정확히 같은 요구 사항이 있습니다.

아마도 이벤트 수신기를 시스템에 첨부 할 수 있습니다. ContentType (모든 컨텐츠 유형은 ID 0x로 해당 하나를 상속합니다)

Featureseceiver와 함께 기능을 만들고 시스템 컨텐츠 유형에 프로그래밍 방식으로 추가하여 가능하는지 확인했습니다. 몇 가지 세부 사항 여기.

해결책을 찾는 길

Aldright, 나는 콘솔 앱으로 약간의 테스트를했습니다.

  1. 추가하려고했습니다 EventReceiver 시스템에 (0x). 메소드 contenttype.update (true, false)라고합니다. 시스템도 마찬가지였습니다 ContentType 업데이트, 어린이. 해당 내용 유형을 함께 수정할 수 없다는 것이 밝혀졌습니다 ReadOnly || Sealed 속성으로 설정되었습니다 TRUE
  2. 항목에 EventReceiver를 추가하려고했습니다 (0x01) ContentType. 여기에서 볼 수 있듯이 모두 ContentTypes 여전히 그 중 하나에서 물려받습니다 (참조 ContentType 계층). 시스템에서 상속되는 사용자 정의 배포 된 컨텐츠 유형이있을 수 있지만 GUI로 만든 컨텐츠 유형이있을 수 있습니다. 이 콘텐츠 유형을 업데이트하면 모든 어린이가 실제로 업데이트되었습니다 ContentTypes (그를 제외한 모든 콘텐츠 유형 ReadOnly 또는 Sealed)

모든 항목에 글로벌 eventReceiver를 첨부하는 방법

따라서 작동하는 솔루션은 다음과 같습니다.

  1. 모든 목록을 반복하고 설정하십시오 Readonly 또는 Sealed 당신이 당신과 함께 해당 콘텐츠 유형을 원한다면 거짓으로 EventReceivers.
  2. 당신의 추가 EventReceiver 목록의 기존 컨텐츠 유형에 (SPList.ContentTypes)
  3. ContentType에 이벤트 리페이버 추가 (SPWeb.ContentTypes) ID 0x01을 사용하여 새 목록이 EventReceiver가 자동으로 추가됩니다. 새로 생성 된 콘텐츠 유형도 상속됩니다 EventReceivers. 또한 모든 서브 웹 ContentTypes 상속 EventReceivers.

세 단계는 모두 콘솔 응용 프로그램 또는 PowerShell 스크립트 일 수 있습니다. 또는 사이트 수집 와이드 기능 FeatureReceiver

결과

    PS C:\Documents and Settings\Administrator> $web.contentTypes |ft id, name, EventReceivers, readonly, sealed

Id                      Name                    EventReceivers                         ReadOnly                  Sealed
--                      ----                    --------------                         --------                  ------
0x                      Sistēma                 {}                                        False                    True
0x007F1DD730DB144C84... Darba kārtības vēsture  {}                                         True                    True
0x01                    Ieraksts                {, , , ...}                               False                   False
0x01003420C661289843... Darba kārtības ieraksts {, , , ...}                               False                   False
0x0101                  Dokuments               {, , , ...}                               False                   False
0x010100629D00608F81... Office datu savienoj... {}                                         True                   False
0x010100B4CBD48E029A... Universālais datu sa... {}                                         True                   False
0x010101                Veidlapa                {, , , ...}                               False                   False
0x010102                Attēls                  {, , , ...}                               False                   False
0x010104                Nezināms dokumenta tips {}                                         True                   False
0x010105                Lapu šablons            {, , , ...}                               False                   False
0x010107                Lietotāja darbplūsma... {, , , ...}                               False                   False
0x010108                Wiki lapa               {, , , ...}                               False                   False
0x010109                Pamatlapa               {, , , ...}                               False                   False
0x01010901              Web daļu lapa           {, , , ...}                               False                   False
0x01010A                Saistīt ar dokumentu    {, , , ...}                               False                   False
0x01010B                Dublinas pamata kolo... {, , , ...}                               False                   False
0x0102                  Notikums                {, , , ...}                               False                   False
0x0103                  Diskutējamais jautājums {, , , ...}                               False                   False
0x0104                  Paziņojums              {, , , ...}                               False                   False
0x0105                  Saite                   {, , , ...}                               False                   False
0x0106                  Kontaktpersona          {, , , ...}                               False                   False
0x0107                  Ziņojums                {, , , ...}                               False                   False
0x0108                  Uzdevums                {, , , ...}                               False                   False
0x0108007122AD6D76CD... Darba kārtības uzdevums {, , , ...}                               False                   False
0x010801                Darbplūsmas uzdevums    {, , , ...}                               False                   False
0x010802                Administratīvs uzdevums {, , , ...}                               False                   False
0x0109                  Darbplūsmas vēsture     {, , , ...}                               False                   False
0x010A                  Person                  {, , , ...}                               False                   False
0x010B                  SharePointGroup         {, , , ...}                               False                   False
0x010C                  DomainGroup             {, , , ...}                               False                   False
0x0110                  Ziņa                    {, , , ...}                               False                   False
0x0111                  Komentārs               {, , , ...}                               False                   False
0x0116                  Tālo Austrumu līgums    {, , , ...}                               False                   False
0x0120                  Mape                    {}                                        False                    True
0x012001                RootOfList              {}                                        False                    True
0x012002                Diskusija               {, , , ...}                               False                   False

죄송합니다. 내 WSS는 현지화되었지만 {,,, ...}는 컨텐츠 유형에 여러 eventReceivers를 추가했음을 의미합니다. 당신이 그것들을 볼 수 있듯이 Readonly 또는 Sealed 속성 False는 손대지 않았습니다.

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