Frage

Ich habe auf Google nach einigen Erläuterungen gesucht, aber nicht die Antworten gefunden, nach denen ich gesucht habe.

Ich möchte einen Delegaten bereitstellen, der einige benutzerdefinierte Funktionen ausführt.Aus diesem Grund möchte ich mit einem Delegaten eine Klasse mit Code versenden, also habe ich Folgendes getan:

Ich habe eine Klasse hinzugefügt:

public class SomeClassForDelegate: WebControl
{
    protected override void Render(System.Web.UI.HtmlTextWriter writer)
    {
        writer.WriteLine("<p>Write some text</p>");
        base.Render(writer);
    }
}

Im Grunde wird diese Klasse nur einen Text schreiben.Der Grund, warum ich das mache, ist nur, um zu testen, ob meine Klasse verwendet wird. Normalerweise füge ich völlig andere Funktionen hinzu.

Dann habe ich eine Delegate-Deklaration in element.xml:

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <Control Id="AdditionalPageHead" ControlAssembly="$SharePoint.Project.AssemblyFullName$" ControlClass="mysolution.SomeClassForDelegate"  Sequence="90" />
</Elements>

Was ich mit einer Funktion bereitstelle.

Alles läuft gut und gut, aber am Ende sehe ich das Ergebnis nicht.

Was mache ich falsch?

Aktualisieren:Gelöst

Das Problem bestand darin, dass die Webkontrolle nicht als sichere Kontrolle eingestellt war.Also habe ich in einer element.xml den gesamten Ordner als sicheren Ort hinzugefügt.Und es hat funktioniert.

Vielen Dank für Ihren Beitrag, insbesondere Dribbel!

War es hilfreich?

Lösung

Bitte überprüfen Sie Folgendes:

  • Gibt es eine Warnung in den ULS-Protokollen?
  • Ist der sequence richtig eingestellt?
  • Hilft das Hinzufügen eines Haltepunkts (dies prüft, ob der Code tatsächlich geladen ist)?
  • Überprüfen Sie, ob auf der Seite mit überhaupt auf das Steuerelement verwiesen wird http://blog.mastykarz.nl/checking-which-delegate-controls-activated-site/ ?
  • Ist das Steuerelement als sicher registriert (überprüfen Sie die web.config nach der Bereitstellung)?Nicht sichere Kontrollen erzeugen einen Fehler in den ULS-Protokollen.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit sharepoint.stackexchange
scroll top