.net 3.5 - not - System.Array. no contiene una definición para "ToList"
method not found system net http httpcontent (6)
El método ToList
que está buscando es un método de extensión. Intente agregar esta directiva de using
al principio de su archivo:
using System.Linq;
Al agregar esta directiva de using
, indica al compilador que se deben importar los métodos de extensión en ese espacio de nombres. Es una pena que no haya más ayuda de Visual Studio para la importación de métodos de extensión (ReSharper lo hace bastante bien).
Obtengo el error anterior en la línea ToList () del código siguiente
if (emailReplyTo != null)
{
System.Collections.Generic.List<String> replyto
= emailReplyTo
// Strip uneccessary spaces
.Replace(", ", ",")
.Split('','')
.ToList();
request.WithReplyToAddresses(emailReplyTo);
}
He incluido el using System.Collections;
en la parte superior de mi archivo. El marco de destino es 3.5, entonces ¿por qué esto está causando un error?
En caso de que alguien tropiece con estas preguntas después de googlear ...
Tuve exactamente el mismo problema en las vistas de Razor y using System.Linq
en la parte superior no me ayudó.
Lo que ayudó fue llamar a .Cast()
antes de usar los métodos de extensión de Linq:
myArrayVariable.Cast<SomeClass>().ToList() //ok, NOW ToList works fine
Es porque los métodos de extensión Enumerable no están disponibles.
Necesita agregar "using System.Linq"
Esto es simplemente porque ArrayList
no expone un método llamado ToList
.
Consulte esta página de MSDN para obtener una vista de tabla de los miembros disponibles para usted.
Como explicaron otros, puede acceder a este método de extensión importando la biblioteca de Linq:
using System.Linq;
Además, consulte este enlace para una implementación personalizada de los mismos, en caso de que desee implementar uno.
También puede hacer esto sin .toList, guarda incluso una biblioteca completa sin ningún motivo real.
nueva lista (matriz)
ToList () es un método de extensión. Tal vez te estás perdiendo el
using System.Linq;