Principales respuestas
Error mercadopago y hashtable

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.
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 "\".
- Propuesto como respuesta Juan MondragónModerator martes, 10 de octubre de 2017 18:45
- Marcado como respuesta Pablo RubioModerator jueves, 15 de febrero de 2018 15:55
Todas las 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 "\".
- Propuesto como respuesta Juan MondragónModerator martes, 10 de octubre de 2017 18:45
- Marcado como respuesta Pablo RubioModerator jueves, 15 de febrero de 2018 15:55