2012-04-12 13 views
0

Ich habe eine Datenbank, die Ausnahmebedingungsnachrichten speichert. Ich möchte eine Abfrage erstellen, die diese Ausnahmen erhält, aber anstatt große Mengen an Text zu verlieren, würde ich es lieber "auf Abruf" sein.Linqpad - Ausgabe in Anker, um Titel zu verwenden

Ich dachte, die Ausnahme in ein Anchor-Tag wie folgt zu setzen und dann die Nachricht zu lesen, wenn nötig, indem man darüber mogelt, würde funktionieren ... anscheinend nicht.

var logsForErrors = (from error in Logs 
     select new { 
       error = LINQPad.Util.RawHtml("<a title='"+ error.Exception+"'></a>"), 
       errorDate = error.Date, 
       errorMessage = error.Message 
     }).Take(10); 

logsForErrors.Dump(); 

Dies wirft eine Ausnahme (lol) - "benutzerdefinierten HTML nicht analysieren kann:"

die Ausnahmemeldung

...RawHtml("<a title='"+ Uri.EscapeDataString(error.Exception)+"'></a>") 

Nachricht

Encoding kann Ausdruck nicht übersetzen ‚RawHtml ((("h__TransparentIdentifier0.error.Exception)) + " '> ")) in SQL und konnte nicht als lokaler Ausdruck behandelt werden. generiert einen neuen Fehler

Irgendwelche Ideen? - Ich bin auch für alternative Lösungen dazu offen.

Ich möchte nur einen Container für die Nachricht, anstatt es einfach in die Ausgabe dumping wie es so riesig !.

Danke, Kohan

Antwort

1

Haben Sie versucht, die "Ergebnisse zu Datagrids" -Modus in den letzten Betas mit? Es könnte genau das tun, was Sie brauchen, ohne etwas anderes schreiben zu müssen.

Edit: Ihr Fehler war wahrscheinlich aufgrund der HTML-Ausgabe, ohne den Text zu entkommen. Die einfachste Lösung besteht darin, Util.RawHtml mit einem XElement anstelle einer Zeichenfolge aufzurufen. Sie könnten eine Erweiterungsmethode schreiben, das tut, was Sie so wollen:

public static class Extensions 
{ 
    public static object Tooltipize (this string data) 
    { 
     if (string.IsNullOrEmpty (data) || data.Length < 20) return data; 
     return Util.RawHtml (new XElement ("span", new XAttribute ("title", data), data.Substring (0, 20))); 
    } 
} 

dies in dem Meine Extensions und Sie können es von jeder Abfrage verwenden.

+0

Ich habe das komplett vergessen. Die tabellarische Art funktioniert sicherlich in der von mir benötigten Form und ich kann die Maus für einen Tooltip über die Zellen bewegen. Es ist nicht genau so, wie ich es wollte, und ich schreibe gerne viele Erweiterungen, um Daten in der Rich-Text-Ausgabe zu formatieren. Aber ich werde das jetzt gerne nutzen. Danke vielmals. – 4imble

+0

Perfekt, vielen Dank :) – 4imble