2012-05-29 10 views
6

En mi aplicación Windows 8 escrita usando Visual Studio 11 Express Beta, no puedo usar ArrayList. Aquí está mi código:¿Dónde estaba mi ArrayList Go? Aplicación Metro

using System.Collections; 


ArrayList al = new ArrayList(); 

de error del compilador:

The type or namespace name 'ArrayList' could not be found (are you missing a using directive or an assembly reference?)

¿Este algo nuevo? Me encanta :) ArrayLists

+4

"La biblioteca de clases de .NET Framework contiene varias nuevas clases de colección genérica en el sistema. Colecciones. Espacio de nombres genérico: se deben usar siempre que sea posible en lugar de clases como ArrayList en el espacio de nombres System.Collections ". http://msdn.microsoft.com/en-us/library/512aeb7t.aspx – Styxxy

+0

Su código solo puede mejorar al no usar ArrayLists. –

Respuesta

13

Para WinRT, sacaron todas las colecciones no genéricas: es más rápido y hace que su código sea más confiable. Use List <T> en su lugar.

ps ... esta no será la última vez que dirás "¿por qué diablos se llevaron esa API?" al migrar a WinRT

1

EDIT

Teniendo en cuenta la documentación de ArrayList, está disponible hasta la versión 4.0. Compruebe su versión de proyecto de .NET Framework. Teniendo en cuenta que estás escribiendo para Metro, tiene que ser 4.5 (al menos).

Más detalles se pueden ver en este post:

How to use ArrayList class in metro style class library project?

Y System.Collections espacio de nombres para aplicaciones estilo Metro carece deArrayList tipo.

+0

@mattytommo: corregido. – Tigran

+0

+1 mañana, ¡ya que llegué al límite diario de votos! Etiquetarme en esta publicación mañana para recordarme :) – mattytommo

0

No puede usar un ArrayList en una aplicación WinRT, tendrá que usar un List.

+0

'ArrayList' no está disponible para las aplicaciones de MetroStyle en la marca de nombres' System.Collections'. – Tigran

+0

@Tigran verifique mi respuesta nuevamente :) – mattytommo

+0

¿En qué espacio de nombres está encontrando ArrayList? Estoy de acuerdo con Tigran, no está en ninguno de los que están en mi entorno. –

Cuestiones relacionadas