Sep 272006
 

Ich habe es schon mal kurz erwähnt. Im dasBlog gibt es immer wieder
Trackback’s die nicht gelöscht werden können. Ich dachte damals, komm
warte auf die neue Version. Allerdings gibt es bei der 1.9’er Version
das Problem noch immer. Es sind die selben Trackback’s die man nicht
löschen kann.

Heute habe ich mich einmal daran versucht das Problem zu lösen.
Sie da, ich hab’s gefunden. Jedenfalls denke ich das. 🙂

Problem:

Der Methode, die die Trackback’s löschen soll, wird z.B.: folgende URL
übergeben.

trackingPermalink -> „h**p://SPAM_DOMAIN/1phentermine/cheap-phentermine-online.html“

dasBlog geht jetzt alle Referrer und Trackback’s des Posting durch und
sucht den entsprechenden Eintrag. Der wird jetzt aber nicht gefunden
weil er in der Collection wie folgt drin ist.

tracking.PermaLink -> „h**p://SPAM_DOMAIN/1phentermine/cheap-phentermine-online.html\r“

Wichtig ist das \r am Ende.

Der Vergleich

String.Compare(tracking.PermaLink, trackingPermalink, true)

muss so also scheitern. Leider.

Lösung:

Das ganze ist in der Datei BlogDataService.cs zu finden, in der Methode

BlogDataService.DeleteTracking.

 

So naiv ich jetzt bin, habe ich einfach vor der Prüfung ob die URL auch
übereinstimmt, noch ein Check eingebaut, der mir Prüft ob die URL auf
ein \r endet.

 

int badString = tracking.PermaLink.IndexOf(„\r“);

if(badString > -1)
{
    tracking.PermaLink = tracking.PermaLink.Remove(badString);
}

if(String.Compare(tracking.PermaLink, trackingPermalink, true) == 0 
   && trackingType == tracking.TrackingType)
{

 

Ob ich es richtig gelöst habe wird sich noch Zeigen. Wenn nicht, dann lasst
es mich wissen.

Sorry, the comment form is closed at this time.