2017-03-17 6 views
0

Ich versuche, ein Problem mit dem Posten von Kommentaren für ein Blog, das das Weblog Sitecore-Modul verwendet, zu lösen. Von dem, was ich sagen kann, wenn die Blogeintrag-URL Bindestriche enthält (d. H. http://[domain.org]/blog/2016/december/test-2-entry), dann erhalte ich den Fehler "Ende der Zeichenfolge erwartet in Zeile [#]". Wenn die Blogeintrag-URL KEINE Bindestriche enthält, funktioniert das Kommentarformular einwandfrei.Ende der Zeichenfolge erwartet Fehler beim Versuch, Kommentar in Weblog

<replace mode="on" find="-" replaceWith="_"/> 

Auch versucht, den Strich durch einen leeren Raum zu ersetzen. Keine Lösung hat funktioniert, da ich immer noch den Fehler bekomme.

Gibt es eine andere Einstellung in der Web.config kann ich ändern, um die Bindestriche in den URLs zu entkommen? Ich habe gelesen, dass das Einschließen von gestricheltem URL-Text mit dem # -Zeichen funktioniert, aber ich möchte das automatisch tun können, anstatt dass der Benutzer zurückgeht und alle seine Blog-Einträge umbenennt.

Hier ist ein Screenshot des Fehlers als Referenz: enter image description here

Antwort

3

Ich habe das Weblog Modul nicht erfahren, aber für das Problem Sie konfrontiert sind, sollten Sie den Strich mit # entkommen. Bitte beachten Sie den folgenden Code-Schnipsel:

public string EscapePath(string path) 
{ 
    string[] joints = Regex.Split(path, "/"); 
    string output = string.Empty; 
    for (int index = 0; index < joints.Length; index++) 
    { 
     string joint = joints[index]; 
     if (!string.IsNullOrEmpty(joint)) 
      output += string.Format("#{0}#", joint); 

     if (index != joints.Length - 1) 
      output += "/"; 
    } 

    return output; 
} 

Referenz: https://github.com/WeTeam/WeBlog/issues/52

Mehr Informationen über dash in Abfragen zu entkommen können here

UPDATE

Sie sollten diese Methode gefunden werden, rufen Sie vor der Veröffentlichung der Kommentar dafür, um den Strichen zu entkommen. Sie können auch die DLL von herunterladen und in Ihrer Lösung verwenden

+0

Dies sieht aus wie eine gute Lösung, aber ich habe keine Ahnung, wo diese Funktion platziert werden sollte .... –

+0

Wie ich bereits in der Antwort zur Verfügung gestellt, ich habe ' t Verwenden Sie das Weblog-Modul. Vielleicht können Sie auf der GitHub-Seite in der Antwort fragen. Aber ich denke, es muss eine Pipeline geben, die Sie im Modul überschreiben können, um die Methode –

+0

hinzuzufügen. Wenn ich mich nicht irre, überprüfen Sie den XML-Knoten weblogCreateComment in der Datei weblog.config. Ich denke, dass es dort ist, dass Sie die Methode platzieren sollten. Ich denke, es sollte der erste sein, der –

Verwandte Themen