Delen via


Apps bouwen ASP.NET met .NET Framework

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

In dit artikel wordt beschreven hoe u een .NET Framework-project bouwt met Azure Pipelines. Zie .NET Core-projecten bouwen, testen en implementeren voor .NET Core-projecten.

Een Azure DevOps-project maken

  1. Selecteer nieuw project of project maken in uw Azure DevOps-organisatie of -verzameling.
  2. Voer een projectnaam in.
  3. Selecteer de zichtbaarheid voor uw project.
  4. Selecteer Maken.

De voorbeeld-app downloaden

De voorbeeld-app is een Visual Studio-oplossing die gebruikmaakt van .NET 4.8. Als u de app wilt ophalen, forkt u de GitHub-opslagplaats op:

https://github.com/Azure-Samples/app-service-web-dotnet-get-started

De pijplijn maken en bouwen

Zodra u de voorbeeldcode in uw eigen opslagplaats hebt, maakt u een pijplijn in uw Azure DevOps-project met behulp van de instructies in Uw eerste pijplijn maken.

Selecteer de sjabloon ASP.NET . Met deze keuze wordt automatisch het azure-pipelines.yml-bestand toegevoegd met de taken die nodig zijn om de code te bouwen in de voorbeeldopslagplaats. De sjabloon bevat de VSTest@2 taak voor het uitvoeren van tests. De voorbeeldopslagplaats bevat geen tests, zodat u de VSTest@2 taak uit de pijplijn kunt verwijderen.

Uw pijplijn moet eruitzien als in het volgende voorbeeld:

# ASP.NET
# Build and test ASP.NET projects.
# Add steps that publish symbols, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/aspnet/build-aspnet-4

trigger:
- main

pool:
  vmImage: 'windows-latest'

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@1

- task: NuGetCommand@2
  inputs:
    restoreSolution: '$(solution)'

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactStagingDirectory)"'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

# ASP.NET
# Build and test ASP.NET projects.
# Add steps that publish symbols, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/aspnet/build-aspnet-4

trigger:
- main

pool: 
  name: default

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@1

- task: NuGetCommand@2
  inputs:
    restoreSolution: '$(solution)'

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactStagingDirectory)"'
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

Selecteer Opslaan en uitvoeren en selecteer Taken om de pijplijn in actie te zien.

Als u de buildartefacten wilt publiceren, voegt u de volgende taak toe aan het einde van uw YAML-bestand:

- task: PublishPipelineArtifact@1
  inputs:
    targetPath: '$(Pipeline.Workspace)'
    artifact: 'myartifact'
    publishLocation: 'pipeline'

- task: PublishBuildArtifacts@1
  inputs:
    pathToPublish: '$(Build.ArtifactStagingDirectory)'
    artifactName: drop

Omgeving bouwen

U kunt Azure Pipelines gebruiken om uw .NET Framework-projecten te bouwen zonder dat u een eigen infrastructuur hoeft in te stellen. De door Microsoft gehoste agents in Azure Pipelines hebben verschillende versies van Visual Studio vooraf geïnstalleerd om u te helpen bij het bouwen van uw projecten. Gebruiken windows-2022 voor Windows Server 2022 met Visual Studio 2022.

U kunt ook een zelf-hostende agent gebruiken om uw builds uit te voeren. Het gebruik van een zelf-hostende agent is handig als u een grote opslagplaats hebt en u wilt voorkomen dat u de broncode downloadt naar een nieuwe computer voor elke build.

Uw builds worden uitgevoerd op een zelf-hostende agent. Zorg ervoor dat de benodigde versie van Visual Studio op de agent is geïnstalleerd.

Meerdere configuraties bouwen

Mogelijk moet u uw app in meerdere configuraties bouwen. Met de volgende stappen bouwt u de voorbeeld-app op vier configuraties: Debug, x86, Debug, x64, Release, x86en Release, x64.

  1. Selecteer in de pijplijngebruikersinterface het tabblad Variabelen en wijzig de volgende variabelen:

    • BuildConfiguration = debug, release
    • BuildPlatform = x86, x64
  2. Selecteer Taken en selecteer vervolgens agenttaak om de volgende opties voor de taak te wijzigen:

    • Selecteer Meervoudige configuratie.
    • Vermenigvuldigers opgeven : BuildConfiguration, BuildPlatform
  3. Selecteer Parallel als u meerdere buildagents hebt en uw configuratie-/platformkoppelingen parallel wilt bouwen.

Afhankelijkheden herstellen

U kunt de NuGet-taak gebruiken om NuGet-pakketafhankelijkheden te installeren en bij te werken. U kunt de NuGet-taak ook gebruiken om NuGet-pakketten te downloaden van Azure Artifacts, NuGet.org of andere externe of interne NuGet-opslagplaatsen.

In het volgende voorbeeld wordt een oplossing hersteld van een feed met projectbereik in dezelfde organisatie.

- task: NuGetCommand@2
  inputs:
    command: 'restore'
    feedsToUse: 'select'
    vstsFeed: 'my-project/my-project-scoped-feed'
    includeNuGetOrg: false
    restoreSolution: '**/*.sln'