Cuestión : Cómo consigo una lista del json en la clase apropiada de VB.NET

He sido el intentar de la lucha conseguir la secuencia siguiente del json en el classes
This de .net soy mi primera tentativa en intentar leer secuencias del json y la secuencia de los deserializers etc.
The viene del Etsy API2 donde una lista de listados en ese sitio puede ser retrieved.
It consiste en varios resultados de listados.  Los listados tienen muchos ejemplo del
An de las características del is

de la salida jsonstr2 = “{"" de la cuenta del "": 93, "" resulta el del "": [{"" del listing_id del "": 45291928, "" del state del "": "" del active del "", "" del user_id del "": el 8483376,

This del ti del ""… tiene muchas más características que no le aburra con here.
I sepa el json básico en trabajos de la clase porque cuando utilizo el solo string

jsonstr2 =” {"" del listing_id del "": 45291928, "" del estado del "" del : ,

and del "" del "" del del user_id del "" "… el

Dim EtsyListing del código como Listingv2
EtsyListing =
Dim temp9 de JSONHelper.Deserialize (de Listingv2) (jsonstr2) como la secuencia = el público público de JSONHelper
de la clase de Etsy.user_ID

compartieron la función Deserialize (de T) (json de ByVal como secuencia) como serializador dévil de T
como nuevo System.Runtime.Serialization. Json.DataContractJsonSerializer el
(de GetType (T)) usar corriente como nuevo MemoryStream (nuevo UTF8Encoding () .GetBytes (json))Vuelta del
(serializer.ReadObject (Stream))El extremo Class

which de Function
del final de Using
del final del
lo pone en la clase listingv2 todo works.

When que intento hacer que varios enumeren usando este código: Listados déviles del
como ListingCollections
Lisitings = JSONHelper.Deserialize (de ListingCollections) (jsonstr)
temp9 dévil como el número entero = Listings.results.Count
temp11 dévil como secuencia = Listings.results (1).URL

only la primera lista está en la colección, aunque debe haber 3.  Cuando intento tener acceso a lthese, por supuesto falla indicando que he excedido el problema de index.

The aparezco ser la clase de la colección del listado que tengo como el siguiente: El

Imports System.IO
Imports System.Text
Imports System.Xml.Serialization
Imports System.Runtime.Serialization
Imports System.Collections.Generic


clase ListingCollections
del _
Public ejecuta IEnumerable, _Etsylistings privados del

de las “características públicas " de IEnumerator

#Region como de la lista (de Listingv2) (nombre: = " característica pública EtsyListings del _
del results")> () como extremo de vuelta Get
del _EtsyListings
del
Get
de la lista (de Listingv2) fijado (valor de ByVal como lista (de Listingv2))_EtsyListings del
= _totcount privado de Property

del final de Set
del final del value
como (nombre: = totcount de la característica pública del _
del > de la " cuenta”) () mientras que el _totcount determinado de vuelta del
de Get
del final del _totcount
de Integer
Get
(valor de ByVal como número entero) = la cuenta de la inicial de Property

End Class

The del final de Set
del final del value
en jsonstr2 también se pone correctamente.  Solamente los listados de Etsy del múltiplo no se recuperan correctamente.  Aparece que he escrito la clase del listingcollection incorrectamente.  ayuda appreciated.





del

Any class= del

Respuesta : Cómo consigo una lista del json en la clase apropiada de VB.NET

usted necesita fijar todo el objeto o el deserialization fallará con una excepción

Su código pasado con una cierta actualización

Substituí el ArrayList cerca: Lista (de secuencia))
Un uso un objeto completo del json
stats retitulado a indicar detrás
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
256:
257:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
280:
281:
282:
283:
284:
285:
286:
287:
288:
289:
290:
291:
292:
293:
294:
295:
296:
297:
298:
299:
300:
301:
302:
303:
304:
305:
306:
307:
308:
309:
310:
311:
312:
313:
314:
315:
316:
317:
318:
319:
320:
321:
322:
323:
324:
325:
326:
327:
328:
329:
330:
331:
Importaciones System.IO
Importaciones System.Text
Importaciones System.Runtime.Serialization
Importaciones System.Runtime.Serialization.Json

Módulo Module1

    Cañería secundaria ()
        Json dévil como secuencia = “{"" de la cuenta del "": 93, "" resulta "": [{"" del listing_id del "": 45291928, "" del estado del "": "" activo del "", "" del user_id del "": 8483376, "" del título del "": """", "" de la descripción del "": """", "" del creation_tsz del "": 20100824, "" del ending_tsz del "": 20100824, "" del original_creation_tsz del "": 20100824, "" del last_modified_tsz del "": 20100824, "" del precio del "": 1234.56, "" del currency_code del "": """", "" de la cantidad del "": 1000, "" marca el "" con etiqueta: [], "" de los materiales del "": [], "" del featured_rank del "": falta de información, "" del state_tsz del "": 0, "" de la tonalidad del "": 0, "" de la saturación del "": 0, "" del brillo del "": 0, "" del is_black_and_white del "": verdad, "" de los URL del "": el """", "" ve el "": 9876}]”
        lstCollections déviles como nuevo ListingCollections ()
        Ms dévil como nuevo MemoryStream (Encoding.UTF8.GetBytes (json))
        Ser dévil como nuevo DataContractJsonSerializer (lstCollections.GetType ())
        lstCollections = TryCast (ser.ReadObject (ms), ListingCollections)
        Console.WriteLine (el “valor del estado del tercer elemento del json de resultados es: ” y lstCollections.EtsyListings.Item (0) .is_black_and_white)
        ms. Cerrarse ()
    Terminar el submarino


     _
    Clase pública ListingCollections
        _EtsyListings privados como lista (de Listingv2)
        _totcount privado como número entero

         _
        Característica pública EtsyListings () como lista (de Listingv2)
            Conseguir
                Volver los _EtsyListings
            El extremo consigue
            Sistema (valor de ByVal como lista (de Listingv2))
                _EtsyListings = valor
            Sistema del extremo
        Característica del extremo

         _
        Totcount de la característica pública () como número entero
            Conseguir
                Volver el _totcount
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _totcount = valor
            Sistema del extremo
        Característica del extremo

        Nuevos secundarios públicos ()
        Submarino del extremo

        Nuevo secundario público (ByVal EtsyListings como totcount de la lista (de Listingv2), de ByVal como número entero)
            Yo. _EtsyListings = EtsyListings
            Yo. _totcount = totcount
        Submarino del extremo

    Clase del extremo

     _
    Clase pública Listingv2
        _listing_id privado como número entero
        _state privado como secuencia
        _user_id privado como número entero
        _title privado como secuencia
        _description privado como secuencia
        _creation_tsz privado como número entero
        _ending_tsz privado como número entero
        _original_creation_tsz privado como número entero
        _last_modified_tsz privado como número entero
        ¿_price privado como decimal?
        _currency_code privado como secuencia
        _quantity privado como número entero
        _tags privados como lista (de secuencia)
        _materials privados como lista (de secuencia)
        _featured_rank privado como Nullable (del número entero)
        _state_tsz privado como número entero
        _hue privado como número entero
        _saturation privado como número entero
        _brightness privado como número entero
        _is_black_and_white privado como boleano
        _url privado como secuencia
        _views privados como número entero

         _
        Listing_id de la característica pública () como número entero
            Conseguir
                Volver el _listing_id
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _listing_id = valor
            Sistema del extremo
        Característica del extremo

         _
        Estado de la característica pública () como secuencia
            Conseguir
                Volver si (el _state no es nada, "", _state)
            El extremo consigue
            Fijar (valor de ByVal como secuencia)
                _state = valor
            Sistema del extremo
        Característica del extremo

         _
        User_id de la característica pública () como número entero
            Conseguir
                Volver el _user_id
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _user_id = valor
            Sistema del extremo
        Característica del extremo

         _
        Título de la característica pública () como secuencia
            Conseguir
                Volver el _title
            El extremo consigue
            Fijar (valor de ByVal como secuencia)
                _title = valor
            Sistema del extremo
        Característica del extremo

         _
        Descripción de la característica pública () como secuencia
            Conseguir
                Volver el _description
            El extremo consigue
            Fijar (valor de ByVal como secuencia)
                _description = valor
            Sistema del extremo
        Característica del extremo

         _
        Creation_tsz de la característica pública () como número entero
            Conseguir
                Volver el _creation_tsz
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _creation_tsz = valor
            Sistema del extremo
        Característica del extremo

         _
        Ending_tsz de la característica pública () como número entero
            Conseguir
                Volver el _ending_tsz
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _ending_tsz = valor
            Sistema del extremo
        Característica del extremo

         _
        Original_creation_tsz de la característica pública () como número entero
            Conseguir
                Volver el _original_creation_tsz
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _original_creation_tsz = valor
            Sistema del extremo
        Característica del extremo

         _
        Last_modified_tsz de la característica pública () como número entero
            Conseguir
                Volver el _last_modified_tsz
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _last_modified_tsz = valor
            Sistema del extremo
        Característica del extremo

         _
        ¿Precio de la característica pública () como decimal?
            Conseguir
                Volver si (el _price no es nada, 0D, _price)
            El extremo consigue
            Fijar (valor de ByVal como decimal?)
                _price = valor
            Sistema del extremo
        Característica del extremo

         _
        Currency_code de la característica pública () como secuencia
            Conseguir
                Volver si (el _currency_code no es nada, "", _currency_code)
            El extremo consigue
            Fijar (valor de ByVal como secuencia)
                _currency_code = valor
            Sistema del extremo
        Característica del extremo

         _
        Cantidad de la característica pública () como número entero
            Conseguir
                Volver el _quantity
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _quantity = valor
            Sistema del extremo
        Característica del extremo

         _
        Etiquetas de la característica pública () como lista (de secuencia)
            Conseguir
                Volver los _tags
            El extremo consigue
            Sistema (valor de ByVal como lista (de secuencia))
                _tags = valor
            Sistema del extremo

        Característica del extremo
         _
        Materiales de la característica pública () como lista (de secuencia)
            Conseguir
                Volver los _materials
            El extremo consigue
            Sistema (valor de ByVal como lista (de secuencia))
                _tags = _materials
            Sistema del extremo

        Característica del extremo

         _
        Featured_rank de la característica pública () como Nullable (del número entero)
            Conseguir
                Volver el _featured_rank
            El extremo consigue
            Sistema (valor de ByVal como Nullable (del número entero))
                _featured_rank = valor
            Sistema del extremo
        Característica del extremo

         _
        State_tsz de la característica pública () como número entero
            Conseguir
                Volver el _state_tsz
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _state_tsz = valor
            Sistema del extremo
        Característica del extremo

         _
        Tonalidad de la característica pública () como número entero
            Conseguir
                Volver el _hue
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _hue = valor
            Sistema del extremo
        Característica del extremo

         _
        Saturación de la característica pública () como número entero
            Conseguir
                Volver el _saturation
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _saturation = valor
            Sistema del extremo
        Característica del extremo

         _
        Brillo de la característica pública () como número entero
            Conseguir
                Volver el _brightness
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _brightness = valor
            Sistema del extremo
        Característica del extremo

         _
        Is_black_and_white de la característica pública () como boleano
            Conseguir
                Volver el _is_black_and_white
            El extremo consigue
            Fijar (valor de ByVal como boleano)
                _is_black_and_white = valor
            Sistema del extremo
        Característica del extremo

         _
        URL de la característica pública () como secuencia
            Conseguir
                Volver el _url
            El extremo consigue
            Fijar (valor de ByVal como secuencia)
                _url = valor
            Sistema del extremo
        Característica del extremo

         _
        Opiniones de característica pública () como número entero
            Conseguir
                Volver los _views
            El extremo consigue
            Fijar (valor de ByVal como número entero)
                _views = valor
            Sistema del extremo
        Característica del extremo

        Nuevos secundarios públicos ()
        Submarino del extremo

        Nuevo secundario público (el listing_id de ByVal como número entero, estado de ByVal como secuencia, user_id de ByVal como número entero, título como secuencia, descripción de ByVal de ByVal como secuencia, creation_tsz de ByVal como número entero, ending_tsz de ByVal como número entero, original_creation_tsz de ByVal como número entero, last_modified_tsz de ByVal como número entero, precio de ByVal como decimal, currency_code como secuencia, cantidad de ByVal de ByVal como número entero, ByVal marca con etiqueta como lista (de secuencia), materiales de ByVal como lista (de secuencia), featured_rank como Nullable (del número entero), state_tsz de ByVal de ByVal como número entero, tonalidad de ByVal como número entero, saturación de ByVal como número entero, brillo de ByVal como número entero, is_black_and_white de ByVal como boleano, URL de ByVal como secuencia, Opiniones de ByVal como número entero)
            Yo. _listing_id = listing_id
            Yo. _state = estado
            Yo. _user_id = user_id
            Yo. _title = título
            Me.description = descripción
            Yo. _creation_tsz = creation_tsz
            Yo. _ending_tsz = ending_tsz
            Yo. _original_creation_tsz = original_creation_tsz
            Yo. _last_modified_tsz = last_modified_tsz
            Yo. _price = precio
            Yo. _currency_code = currency_code
            Yo. _quantity = cantidad
            Yo. _tags = etiquetas
            Yo. _materials = materiales
            Yo. _featured_rank = featured_rank
            Yo. _state_tsz = state_tsz
            Yo. _hue = tonalidad
            Yo. _saturation = saturación
            Yo. _brightness = brillo
            Yo. _is_black_and_white = is_black_and_white
            Yo. _url = URL
            Yo. _views = opiniónes

        Submarino del extremo

    Clase del extremo

Módulo del extremo
Otras soluciones  
 
programming4us programming4us