Wie werden Klassen in Unterordnern in meinem App_Code-Ordner nicht korrekt gefunden?

7

Ich erhalte den folgenden Fehler, wenn ich Klassendateien in Unterordner meines App_Code-Ordners lege:

errorCS0246: Der Typ oder Namespace-Name 'MyClassName' konnte nicht gefunden werden (fehlt eine using-Direktive oder eine Assembly-Referenz?)

Diese Klasse befindet sich überhaupt nicht in einem Namespace. Irgendwelche Ideen?

    
Greg 30.09.2008, 21:09
quelle

6 Antworten

18

Sie müssen codeSubDirectories zu Ihrem Kompilierungselement in web.config

hinzufügen %Vor%     
AnthonyWJones 30.09.2008, 21:22
quelle
16

Überprüfen Sie die BuildAction-Eigenschaft der Datei. Dies sollte auf "Kompilieren"

eingestellt werden     
Firoj Husen Shaikh 16.08.2011 18:11
quelle
1

Ist es möglich, dass Sie den Ordner nicht als Anwendung in IIS (oder Ihrem Webserver) festgelegt haben? Wenn nicht, dann wird der App_Code verwendet, der vom übergeordneten Ordner (oder der nächsten Anwendung nach oben) verwendet wird.

Stellen Sie sicher, dass der Ordner als Anwendung markiert ist und die richtige Version von ASP.NET verwendet.

    
Marc Gravell 30.09.2008 21:11
quelle
1

Es ist vielleicht nicht der richtige Weg, aber ich finde es am einfachsten.

Erstellen Sie die Klasse wie gewohnt im Hauptordner und bewegen Sie sie dann mit Ihrer Maus in Ihren Unterordner. Re-kompilieren und alles sollte in Ordnung sein.

    
peterincumbria 08.11.2011 07:57
quelle
0

Wenn Sie Ordner zu Ihrem app_code hinzufügen, werden sie durch verschiedene Namespaces getrennt, wenn ich mich richtig erinnere, indem Sie den Standard-Namespace als Root verwenden und dann für jeden Ordner hinzufügen.

    
Mitchel Sellers 30.09.2008 21:21
quelle
0

In Visual Studio (zumindest 2010, aber ich erinnere mich auch an frühere Versionen) können Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Ordner klicken und dann "In Projekt einschließen" auswählen.

Dann auf der Registerkarte Eigenschaften für jede Datei (oder wählen Sie sie alle auf einmal), wählen Sie "Compile" für die Eigenschaft "Build Action".

Das hat für mich funktioniert.

    
TonyH 13.07.2012 22:57
quelle

Tags und Links