Abrufen von SPContext innerhalb des Ereignisempfängers

7

Ich habe einen Event Receiver erstellt, aber das Problem ist, dass ich keinen Verweis auf SPContext : SPContext.Current returns null bekommen kann. Ich brauche es, um der Site einige Listen hinzuzufügen. Hat jemand eine Idee, wie ich es bekommen könnte?

Ich habe auch versucht, Breakpoints innerhalb des Ereignisempfängers zu setzen, aber FeatureActivates löst niemals aus irgendeinem Grund aus. Welches ist das richtige Ereignis, wenn eine Liste direkt nach der Bereitstellung aktiviert wird?

    
Dr.Denis McCracleJizz 27.02.2012, 16:09
quelle

3 Antworten

14

Sie können SPContext nicht in Handlern abrufen - dies ist beabsichtigt. Sie sollten Ereigniseigenschaften verwenden, die als Argument an den Handler übergeben werden, um einen Verweis auf das aktuelle Web, Listenelement usw. zu erhalten. Zum Beispiel können Sie im Feature-aktivierten Handler Folgendes tun:

%Vor%

Wenn der Funktionsumfang Site ist,

%Vor%     
Ivan Vagunin 27.02.2012, 19:30
quelle
5

Ich dachte, dass der Umfang des Features von Bedeutung ist. Wenn Sie das Feature im Site-Bereich bereitgestellt haben, können Sie das Web mithilfe dieser Codezeile abrufen:

%Vor%     
GuruKay 06.08.2012 18:13
quelle
2

Ich weiß, dass dieser Thread etwas alt ist, aber Sie sollten wirklich Folgendes verwenden:

%Vor%

gemäß SP-Best Practices: Ссылка Es stellt sicher, dass Sie keine Objekte zu entsorgen haben und verhindert, dass Sie einen Casting-Fehler treffen.

    
withoutIf 06.12.2013 22:49
quelle