Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/04/2015, 18:10
GUILLHERMOSOFT
 
Fecha de Ingreso: marzo-2009
Ubicación: Cali (Valle) - Colombia
Mensajes: 164
Antigüedad: 15 años, 8 meses
Puntos: 2
De acuerdo Problema con Retorno de JSON

Cordial Saludo

Me encuentro trabajando con el editor WYSIWYG (http://demos.telerik.com/kendo-ui/editor/imagebrowser) de Kendo UI y para poder usar su imageBrowser requiero retornar datos en un JSON "limpio", es decir, con el siguiente formato:

Código:
[{"name":"cr1.jpg","type":"f","size":394875},{"name":"cr2.jpg","type":"f","size":370922},{"name":"cr3.jpg","type":"f","size":361742},{"name":"cr4.jpg","type":"f","size":404497}]
pero mi web service (escrito en VB) me los retorna de la siguiente manera:

Código:
<?xml version="1.0" encoding="UTF-8"?>
<string xmlns="http://tempuri.org/">[{"name":"cr1.jpg","type":"f","size":394875},{"name":"cr2.jpg","type":"f","size":370922},{"name":"cr3.jpg","type":"f","size":361742},{"name":"cr4.jpg","type":"f","size":404497}]</string>
Este es el código de mi WebMethod

Código:
 <WebMethod(enableSession:=True)> _
    <ScriptMethod(ResponseFormat:=ResponseFormat.Json)> _
    Public Function Read() As String
        Dim tbl As New DataTable
        Dim r As DataRow
        tbl.Columns.Add("name", Type.GetType("System.String"))
        tbl.Columns.Add("type", Type.GetType("System.String"))
        tbl.Columns.Add("size", Type.GetType("System.Int32"))
        Dim ruta As String = System.AppDomain.CurrentDomain.BaseDirectory() + "files\plantillas"
        Dim folder As New DirectoryInfo(ruta)
        For Each archivo As FileInfo In folder.GetFiles()
            r = tbl.NewRow
            r("name") = archivo.Name.ToString
            r("type") = "f"
            r("size") = archivo.Length
            tbl.Rows.Add(r)
            r = Nothing
        Next
        Return JsonConvert.SerializeObject(tbl)
    End Function
Este es mi código JS:

Código:
                $(document).ready(function() {
                    $("#editor").kendoEditor({
                        tools: [
                            "insertImage"
                        ],
                        imageBrowser: {
                           messages: {
                            dropFilesHere: "Drop files here"
                           },
                           transport: {
                                read: "/miws.asmx/Read"
                           }
                        }                        
                    });
                });
Si alguno de ustedes sabe cómo podría hacer para que el JSON sea retornado como lo requiero le agradecería mucho su ayuda.

Quedo atento.

Muchas gracias.