2009-08-21 11 views
0

Wenn ein Dokument im ItemAdding-Ereignis validiert wird, gibt es viele Möglichkeiten, dem Benutzer Fehler anzuzeigen, aber es scheint keine Möglichkeit zur Anzeige zu geben Erfolge für den Benutzer, wie eine Validierung erfolgreich war. Eine Info-Nachricht an den Benutzer an der Spitze der Dokumentbibliothek wäre großartig.Eine Erfolgsmeldung für den Benutzer in einer SharePoint-Dokumentbibliothek nach Validierung in ItemAdding anzeigen Ereignis

public class MyItemEventReceiver : SPItemEventReceiver { 
    public MyItemEventReceiver() {} 
    public override void ItemAdding(SPItemEventProperties properties) { 
      // Do some validation 
      // If successful display message to user - can't seem to do 
      // If unsuccessful cancel and go to the error page - easy 
     } 
    } 
} 

Antwort

3

im Ereignishandler haben Sie eine Eigenschaft Abbrechen aufgerufen, wenn auf true gesetzt es Sie auf die Fehlerseite umleiten wird. Wenn Sie es nicht stören, wird es Sie auf die Metadatenseite des Dokuments umleiten, d. H. Sie werden wie für den Namen und den Titel des Dokuments verfahren. Da man sagt, dass es out of the Box ist, ist es nicht möglich zu archivieren, was Sie tun wollen. Ein alternativer Ansatz, den ich vorschlagen würde, ist, dass, sobald die Validierung erfolgreich ist, ein Flag in der Session/Property Bag der Liste mit der Dokumenten-GUID als Schlüssel gesetzt wird und auf der endgültigen Zielseite ein benutzerdefiniertes Webpart bereitgestellt wird, das nach diesem sucht GUID und wenn es einen Wert gibt, dann wird es die Nachricht anzeigen.

0

Umm ... Bearbeiten ListIs AllItems.aspx oder bearbeiten Sie Ihre masterpage, fügen Sie Literal Kontrolle hinzu. Bei ItemAdded-Ereignis verweisen Sie nur auf dieses Steuerelement und legen Sie dessen Wert fest.

Vielleicht stellt sich heraus, dass Sie sogar Code-Behind für diese Masterpage benötigen. Siehe here.

+0

ItemAdded Event ist Async Event gibt es keine Garantie, dass es sofort gefeuert wird.Auch gibt es keine Garantie, dass die Seite auf die AllItems.aspx Seite umgeleitet wird. Ich würde sagen, Itemadded Event wird eine schlechte Idee sein. – Kusek

+0

Nun, wenn Sie Masterpage bearbeiten, müssen Sie nicht zu AllItems.aspx umgeleitet werden, um dieses Steuerelement zu haben. Aber der andere Punkt macht Sinn. –

Verwandte Themen