none
Error mercadopago y hashtable RRS feed

  • Pregunta

  • Hola estoy implementando mercadopago en una web. Utilizo vb,ellos dan el siguiente codigo en C#

        <%
            MP mp = new MP ("CLIENT_ID", "CLIENT_SECRET");
            Hashtable preference = mp.createPreference("{\"items\":[{\"title\":\"sdk-dotnet\",\"quantity\":1,\"currency_id\":\"ARS\",\"unit_price\":10.5}]}");
        %>
        
    <!doctype html>
    <html>
        <head>
           <title>MercadoPago SDK - Create Preference and Show Checkout Example</title>
        </head>
        <body>
            <a href="<% Response.Write(((Hashtable) preference["response"])["init_point"]); %>" name="MP-Checkout" class="orange-ar-m-sq-arall">Pay</a>
            <script type="text/javascript" src="//resources.mlstatic.com/mptools/render.js"></script>
        </body>
    </html>


    En vez de hacerlo en el lado de diseño, lo estoy haciendo del lado del código, logro crear todo, pero al momento de asignar el href me da error en el hashtable, yo lo tengo así:

         Dim mp As New MP("8818064874473914", "W8kN2jzkrPJ6f4xdFN76Syf0BHxCpJnj")
                Dim preference As Hashtable = mp.createPreference("{\'items\':[{\'title\':\'" & u & "\',\'quantity\':1,\'currency_id\':\'ARS\',\'unit_price\':" & Session("Precio") & "}]}")
    
                botonpagar.Attributes("href") = Response.Write(((Hashtable) preference("response"))("init_point"))

    Me da el siguiente error: Hashtable is a class type and cannot be used as expression.

    Alguno sabe como lo modifico para que funcione?

    Por favor, gracias.

    lunes, 23 de mayo de 2016 21:52

Respuestas

  • Así a simple vista, un error que veo en ese código (puede que además haya otros) es que está escrito en VB pero dentro de los strings hay metidos escapes al estilo de C# (las "\"), que en VB no son válidos - las barras quedarán dentro del string, resultando en una configuración incorrecta. En VB hay que quitar las "\", y si se necesita introducir una comilla doble, lo que hay que hacer es duplicarla en lugar de anteponerle una "\".
    jueves, 5 de octubre de 2017 19:40

Todas las respuestas

  • Buenas tardes,

    Pudiste resolver esto que planteas aca? Tengo el mismo problema, necesito implementar mercadopago en un sitio hecho en vb.net.

    Si me podes ayudar te lo agradecería,

    Saludos

    Esteban

    jueves, 5 de octubre de 2017 19:13
  • Así a simple vista, un error que veo en ese código (puede que además haya otros) es que está escrito en VB pero dentro de los strings hay metidos escapes al estilo de C# (las "\"), que en VB no son válidos - las barras quedarán dentro del string, resultando en una configuración incorrecta. En VB hay que quitar las "\", y si se necesita introducir una comilla doble, lo que hay que hacer es duplicarla en lugar de anteponerle una "\".
    jueves, 5 de octubre de 2017 19:40