Delen via


ASP.NET Kernmapstructuur

Note

Dit is niet de nieuwste versie van dit artikel. Zie de .NET 10-versie van dit artikel voor de huidige release.

Warning

Deze versie van ASP.NET Core wordt niet meer ondersteund. Zie het .NET- en .NET Core-ondersteuningsbeleid voor meer informatie. Zie de .NET 9-versie van dit artikel voor de huidige release.

De publicatiemap bevat de implementeerbare onderdelen van de app die worden geproduceerd door het dotnet publish-commando. De map bevat:

App-type Mapstructuur
Frameworkafhankelijk uitvoerbaar bestand (FDE)
  • publiceren†
    • Weergaven† MVC-apps; als weergaven niet vooraf zijn gecompileerd
    • Pagina's† MVC- of Razor Pagina-apps als pagina's niet vooraf zijn gecompileerd
    • wwwroot†
    • *.dll bestanden
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}{. EXTENSION}.exe extensie in Windows, geen extensie op macOS of Linux
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (IIS-implementaties)
    • createdump (Linux createdump utility)
    • *.so (gedeelde Linux-objectbibliotheek)
    • *.a (macOS-archief)
    • *.dylib (dynamische macOS-bibliotheek)
Zelf-ingesloten implementatie (SCD)
  • publiceren†
    • Weergaven† MVC-apps, als weergaven niet vooraf zijn gecompileerd
    • Pagina's† MVC- of Razor Pagina-apps als pagina's niet vooraf zijn gecompileerd
    • wwwroot†
    • *.dll bestanden
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}{. EXTENSION} .exe extensie in Windows, geen extensie op macOS of Linux
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (IIS-implementaties)

†Geeft een map aan

De publicatiemap vertegenwoordigt het hoofdpad van de inhoud, ook wel het basispad van de toepassing genoemd, van de implementatie. Ongeacht de naam die wordt gegeven aan de publicatiemap van de geïmplementeerde app op de server, dient de locatie ervan als het fysieke pad van de server naar de gehoste app.

De wwwroot-directory, indien aanwezig, bevat alleen statische assets.

Aanvullende bronnen

De publicatiemap bevat de implementeerbare onderdelen van de app die worden geproduceerd door het dotnet publish-commando. De map bevat:

App-type Mapstructuur
Frameworkafhankelijk uitvoerbaar bestand (FDE)
  • publiceren†
    • Weergaven† MVC-apps; als weergaven niet vooraf zijn gecompileerd
    • Pagina's† MVC- of Razor Pagina-apps als pagina's niet vooraf zijn gecompileerd
    • wwwroot†
    • *.dll bestanden
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}{. EXTENSION}.exe extensie in Windows, geen extensie op macOS of Linux
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}.Views.dll
    • {ASSEMBLY NAME}. Views.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (IIS-implementaties)
    • createdump (Linux createdump utility)
    • *.so (gedeelde Linux-objectbibliotheek)
    • *.a (macOS-archief)
    • *.dylib (dynamische macOS-bibliotheek)
Zelf-ingesloten implementatie (SCD)
  • publiceren†
    • Weergaven† MVC-apps, als weergaven niet vooraf zijn gecompileerd
    • Pagina's† MVC- of Razor Pagina-apps als pagina's niet vooraf zijn gecompileerd
    • wwwroot†
    • *.dll bestanden
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}{. EXTENSION} .exe extensie in Windows, geen extensie op macOS of Linux
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}.Views.dll
    • {ASSEMBLY NAME}. Views.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (IIS-implementaties)

†Geeft een map aan

De publicatiemap vertegenwoordigt het hoofdpad van de inhoud, ook wel het basispad van de toepassing genoemd, van de implementatie. Ongeacht de naam die wordt gegeven aan de publicatiemap van de geïmplementeerde app op de server, dient de locatie ervan als het fysieke pad van de server naar de gehoste app.

De wwwroot-directory, indien aanwezig, bevat alleen statische assets.

Aanvullende bronnen

De publicatiemap bevat de implementeerbare onderdelen van de app die worden geproduceerd door het dotnet publish-commando. De map bevat:

App-type Mapstructuur
Frameworkafhankelijk uitvoerbaar bestand (FDE)
  • publiceren†
    • Weergaven† MVC-apps; als weergaven niet vooraf zijn gecompileerd
    • Pagina's† MVC- of Razor Pagina-apps als pagina's niet vooraf zijn gecompileerd
    • wwwroot†
    • *.dll bestanden
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}{. EXTENSION} .exe extensie in Windows, geen extensie op macOS of Linux
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}.Views.dll
    • {ASSEMBLY NAME}. Views.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (IIS-implementaties)
    • createdump (Linux createdump utility)
    • *.so (gedeelde Linux-objectbibliotheek)
    • *.a (macOS-archief)
    • *.dylib (dynamische macOS-bibliotheek)
Zelf-ingesloten implementatie (SCD)
  • publiceren†
    • Weergaven† MVC-apps, als weergaven niet vooraf zijn gecompileerd
    • Pagina's† MVC- of Razor Pagina-apps als pagina's niet vooraf zijn gecompileerd
    • wwwroot†
    • *.dll bestanden
    • {ASSEMBLY NAME}.deps.json
    • {ASSEMBLY NAME}.dll
    • {ASSEMBLY NAME}.exe
    • {ASSEMBLY NAME}.pdb
    • {ASSEMBLY NAME}.Views.dll
    • {ASSEMBLY NAME}. Views.pdb
    • {ASSEMBLY NAME}.runtimeconfig.json
    • web.config (IIS-implementaties)

†Geeft een map aan

De publicatiemap vertegenwoordigt het hoofdpad van de inhoud, ook wel het basispad van de toepassing genoemd, van de implementatie. Ongeacht de naam die wordt gegeven aan de publicatiemap van de geïmplementeerde app op de server, dient de locatie ervan als het fysieke pad van de server naar de gehoste app.

De wwwroot-directory, indien aanwezig, bevat alleen statische assets.

Het maken van een map Logboeken is handig voor ASP.NET Core Module verbeterde logboekregistratie voor foutopsporing. Mappen in het pad dat aan de <handlerSetting> waarde wordt verstrekt, worden niet automatisch door de module gemaakt en moeten vooraf bestaan in de implementatie, zodat de module het foutopsporingslogboek kan schrijven.

Een logboekmap kan worden gemaakt voor de implementatie met behulp van een van de volgende twee benaderingen:

  • Voeg het volgende <Target> element toe aan het projectbestand:

    <Target Name="CreateLogsFolder" AfterTargets="Publish">
       <MakeDir Directories="$(PublishDir)Logs" 
                Condition="!Exists('$(PublishDir)Logs')" />
       <WriteLinesToFile File="$(PublishDir)Logs\.log" 
                         Lines="Generated file" 
                         Overwrite="True" 
                         Condition="!Exists('$(PublishDir)Logs\.log')" />
    </Target>
    

    Het <MakeDir> element maakt een lege map Logboeken in de gepubliceerde uitvoer. Het element gebruikt de PublishDir eigenschap om de doellocatie te bepalen voor het maken van de map. Verschillende implementatiemethoden, zoals Web Deploy, slaan lege mappen over tijdens de implementatie. Het <WriteLinesToFile> element genereert een bestand in de map Logboeken , waardoor de implementatie van de map naar de server wordt gegarandeerd. Het maken van mappen met deze methode mislukt als het werkproces geen schrijftoegang heeft tot de doelmap.

  • Maak de map Logboeken fysiek op de server in de implementatie.

Voor de implementatiemap zijn lees-/uitvoermachtigingen vereist. Voor de map Logboeken zijn lees-/schrijfmachtigingen vereist. Voor aanvullende mappen waarin bestanden worden geschreven, zijn lees-/schrijfmachtigingen vereist.

Aanvullende bronnen