Esto es lo que he estado usando:
Special thanks to this thread (especially Pat Kujawa's & anunay's comments)
C# (Directamente desde el comentario de la patente Kujawa (aunque lo hice volver en sí de modo que las cadenas como la versión de LINQPad hace)):
public static T Dump<T>(this T o) {
var localUrl = Path.GetTempFileName() + ".html";
using (var writer = LINQPad.Util.CreateXhtmlWriter(true))
{
writer.Write(o);
File.WriteAllText(localUrl, writer.ToString());
}
Process.Start(localUrl);
return o;
}
VB (mi conversión ya que necesitaba en una aplicación VB):
Public Module LinqDebugging
<System.Runtime.CompilerServices.Extension()>
Public Function Dump(Of T)(ByVal o As T) As T
Dim localUrl = Path.GetTempFileName() + ".html"
Using writer = LINQPad.Util.CreateXhtmlWriter(True)
writer.Write(o)
File.WriteAllText(localUrl, writer.ToString())
End Using
Process.Start(localUrl)
Return o
End Function
End Module
Usted tendrá que añadir el ejecutable LINQPad como referencia en su proyecto, así como System.IO
y System.Diagnostics
Se lanzará el navegador web por defecto que muestra la salida exacta que LINQPad generaría.
Posiblemente quiera esto: http://msdn.microsoft.com/en-us/library/bb397968(v=vs.90).aspx – Darragh