wake-up-neo.com

Der App_Code-Ordner fehlt in VS 2010

Ich habe versucht, eine Dynamic Data-Website mit VS 2010 RC zu erstellen. Ein Versuch, einen App_Code-Ordner zu erstellen, in dem ich eine LINQ-Klasse für SQL-Klassen verwenden würde, schlug fehl. Bei der Auswahl von "ASP.NET-Ordner hinzufügen" zum Hinzufügen des Ordners hatte ich Optionen, nur die folgenden Ordner zu erstellen:

  • App_GlobalResources
  • App_LocalResources
  • Anwendungsdaten
  • App_Browsers
  • Thema

Was ist mit dem Ordner App_Code passiert?

39
Vadim

Warum erstellen Sie nicht ein anderes Projekt, eine Klassenbibliothek, und legen Sie es dort ab. Dies ist bei weitem der beste Weg, um diese Klassen vom Rest Ihrer Website zu trennen.

Um Ihre spezifische Frage zum Ordner App_Code zu beantworten, ist er in WebSite-Projekten als Asp.Net-Ordner verfügbar, aus dem Sie wählen können. Aber von einem Webanwendungsprojekt aus können Sie einfach einen neuen Ordner erstellen und ihn als App_Code bezeichnen. Er funktioniert problemlos. Dies ist ab Visual Studio 2010 RC.

34
Chris Conway

sie können/sollten den Ordner App_Code nicht zu einer Webanwendung hinzufügen, da dieser Ordner für die Laufzeitkompilierung von asp.net vorgesehen ist und das Webanwendungsprojekt für Sie die Kompilierung Ihrer Website in eine DLL vorsieht, die Sie in der Bin-Ordner und auf Ihrer Site bereitstellen. Wenn Sie dies manuell hinzufügen, erhalten Sie möglicherweise Namenskonflikte, da die Klasse in die DLL vorkompiliert wird. Asp.net versucht dann erneut, zur Laufzeit neu zu kompilieren.

Fügen Sie für Webanwendungsprojekte stattdessen einen Ordner mit dem Namen "CodeFolder" hinzu und fügen Sie dort Ihre Klasse hinzu. Klicken Sie dann mit der rechten Maustaste auf die Eigenschaften dieser Klassendatei und legen Sie ihre Build-Konfiguration so fest, dass sie anstelle des Inhalts kompiliert.

Ich arbeite an einem eigenen Webprojekt für www.athenatennis.com.sg und gehe damit eine ähnliche Lernkurve durch.

23
letapz

Sie können den App_Code-Ordner manuell erstellen und Ihre Klasse in ..__ hinzufügen. Eine Sache, die Sie beachten sollten, ist ... in den Dateieigenschaften, dass die Option Build Action auf Compile eingestellt ist.

3
CK Lam

Ich fand das auch lustig, dass es fehlt. Die Sache ist, dass Sie den App_Code-Ordner "nicht" erstellen müssen, indem Sie die Klassen einfach zu einem neuen Ordner hinzufügen. 

In VS 2005 würde jede Klasse außerhalb des App_Code einen Kompilierungsfehler ergeben. 

Also möchte ich auch wissen, warum sie beschlossen haben, diese Einschränkung aufzuheben? War es, weil sich Leute darüber beschwert haben, oder hat sich das Gestaltungskonzept geändert und es wurde als notwendig erachtet?

2
Bernard

Wenn Sie den Ordner app_code möchten, müssen Sie eine "ASP.NET-Website" erstellen. Anschließend Rechtsklick auf die Website (Projektmappen-Explorer) -> ASP.NET-Ordner hinzufügen -> App_Code.

Wenn Sie sich den Ordner app_code in der "ASP.NET-Webanwendung" ansehen, verschwenden Sie Zeit.

1
Djay

in VS 2010 müssen Sie eine Lösung erstellen. Klicken Sie anschließend mit der rechten Maustaste auf -> Neue Website hinzufügen. Wenn Sie dann Klassen hinzufügen (linq2sql usw.), erstellt vs den Ordner app_code für Sie

0
cvanniekerk

wenn Sie eine Klasse erstellen, werden Sie gefragt, ob Sie sie einem App-Code-Ordner hinzufügen möchten.

0
fujiko

Es ist sehr einfach, die neue Klasse aus dem Element "Neues Element hinzufügen" hinzuzufügen. In Visual Studio 2010 wird automatisch die Meldung "Möchten Sie die Datei im Ordner" App_Code "ablegen. Klicken Sie einfach auf" OK ". [Hier Bildbeschreibung eingeben] [1]

0
saqib amin