2016-07-12 10 views
3

Ich verwende Code auf OSX zusammen mit dem .NET Core. Beim Versuch, eine ArrayList zu erstellen, erhalte ich den Fehler, dass der Namespace nicht gefunden werden kann.Kann eine ArrayList mit Code unter OSX nicht deklarieren

Die System.Collections wird bereits verwendet. Bei der Untersuchung, was von System.Collections vorgeschlagen wird, sehe ich, dass nicht alle Methoden wie in der Dokumentation aufgeführt sind.

Was könnte das Problem sein? Ich habe den neuesten .NET Core von MS-Site installiert.

+1

Für einen Starter verwenden Sie die Liste anstelle von ArrayList. – Andrey

+0

ist es egal, ich kann auch nicht darauf verweisen. Ich denke, es ist der Namensraum von Collections, daher diese Frage. – will

+0

Wird die Baugruppe referenziert? – toadflakz

Antwort

3

Sie nicht die Art verwenden können, weil sie in einem separaten NuGet Paket definiert ist,

http://www.nuget.org/packages/System.Collections.NonGeneric/

Beachten Sie, dass nur wenige Plattformen von diesem Paket unterstützt werden, so für einige Moniker, können Sie es nicht verweisen können.

Der empfohlene Ansatz besteht darin, zu der generischen Version der Sammlungsarten zu wechseln.

0

Sieht aus wie System.Collections.NonGeneric wird nicht in Mac unterstützt. Es funktionierte nicht für mich, obwohl ich dieses Paket installiert hatte. Es scheint, dass es veraltet ist und Microsoft schlägt vor, stattdessen Generic-Listen zu verwenden.

0

Öffnen Sie CSPROJ und fügen Sie den folgenden unter

<ItemGroup> 
    <PackageReference Include="System.Collections.NonGeneric" Version="4.3.0"> 
    </PackageReference> 
</ItemGroup> 

im Terminal oder Eingabeaufforderung, stellen Sie sicher, dass Sie auf dem gleichen Arbeitsverzeichnis wie Ihr Projekt und

# dotnet restore 

Sie ausführen können, Jetzt verwenden Sie es in Ihrem Projekt