Sdílet prostřednictvím


Vytváření ASP.NET aplikací pomocí rozhraní .NET Framework

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Tento článek popisuje, jak vytvořit projekt rozhraní .NET Framework pomocí Azure Pipelines. Tato příručka je určená pro uživatele Azure DevOps, kteří vytvářejí a nasazují aplikace ASP.NET pomocí rozhraní .NET Framework. Projekty .NET Core najdete v tématu Sestavení, testování a nasazení aplikací .NET Core.

Požadavky

produkt Požadavky
Azure DevOps Projekt Azure DevOps.
– Možnost spouštět pipeliny na agentech hostovaných Microsoftem. Můžete si buď koupit paralelní úlohu, nebo si můžete požádat o bezplatnou úroveň.
– Základní znalost YAML a Azure Pipelines. Další informace naleznete v tématu Vytvoření prvního potrubí.
- Oprávnění:
     – Chcete-li vytvořit pipeline: Musíte být ve skupině Přispěvatelé a skupina musí mít oprávnění k vytvoření build pipeline nastavena na hodnotu Povolit. Členové skupiny Správci projektů můžou spravovat kanály.
    - Chcete-li vytvořit připojení služeb: Pro připojení služeb musíte mít roli Správce nebo Tvůrce.
.NET Framework – Projekt rozhraní .NET Framework (doporučeno verze 4.5 nebo novější).
– Zkušenosti se sadou Visual Studio nebo jiným vývojovým prostředím .NET
– Příslušná sada .NET Framework SDK nainstalovaná na místním počítači.
GitHub – Účet GitHubu .
Připojení ke službě GitHub pro autorizaci Azure Pipelines.

Vytvoření projektu Azure DevOps

  1. V organizaci nebo kolekci Azure DevOps vyberte Nový projekt nebo Vytvořit projekt.
  2. Zadejte název projektu.
  3. Vyberte viditelnost projektu.
  4. Vyberte Vytvořit.

Získání ukázkové aplikace

Pokud nemáte existující projekt ASP.NET, postupujte podle pokynů průvodce službou App Service a vytvořte webovou aplikaci ASP.NET 4.8.

Vytvoření a sestavení kanálu

Po přidání ukázkového kódu do vlastního úložiště vytvořte v projektu Azure DevOps kanál. Další informace naleznete v tématu Vytvoření prvního potrubí.

Vyberte šablonu ASP.NET. Tato volba automaticky přidá soubor azure-pipelines.yml s úlohami potřebnými k sestavení kódu do ukázkového úložiště. Šablona obsahuje VSTest@3 úlohu ke spuštění testů. Ukázkové úložiště neobsahuje testy, můžete tedy odstranit úlohu VSTest@3 z technologického postupu.

Kanál by měl vypadat jako v následujícím příkladu:

# 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)'

Výběrem možnosti Uložit a spustit a výběrem možnosti Úlohy zobrazíte kanál v akci.

Pokud chcete publikovat artefakty sestavení, přidejte na konec souboru YAML následující úlohu:

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

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

Sestavení prostředí

Azure Pipelines můžete použít k sestavení projektů rozhraní .NET Framework bez nastavení jakékoli infrastruktury. Agenti hostovaní Microsoftem v Azure Pipelines obsahují několik vydaných verzí sady Visual Studio, které vám pomůžou sestavovat projekty. Použijte windows-2025 pro Windows Server 2025 se sadou Visual Studio 2022.

Ke spuštění sestavení můžete použít také agenta v místním prostředí. Použití místního agenta je užitečné, pokud máte velké úložiště a chcete se vyhnout stahování zdrojového kódu na nový počítač pro každé sestavení.

Vaše sestavení běží na místním agentu. Ujistěte se, že máte v agentu nainstalovanou potřebnou verzi sady Visual Studio.

Sestavení více konfigurací

Možná budete muset vytvořit aplikaci v několika konfiguracích. Následující kroky sestaví ukázkové aplikace ve čtyřech konfiguracích: Debug, x86, Debug, x64, Release, x86a Release, x64.

  1. V uživatelském rozhraní kanálu vyberte kartu Proměnné a upravte následující proměnné:

    • BuildConfiguration = debug, release
    • BuildPlatform = x86, x64
  2. Vyberte Úlohy a pak vyberte úlohu agenta, abyste změnili následující možnosti úlohy:

    • Vyberte vícenásobnou konfiguraci.
    • Určení násobitelů:BuildConfiguration, BuildPlatform
  3. Vyberte možnost Paralelně, pokud máte více agentů sestavení a chcete sestavit své párování konfigurací a platforem paralelně.

Obnovení závislostí

Pomocí úlohy NuGet nainstalujte a aktualizujte závislosti balíčků NuGet. Úlohu NuGet můžete použít také ke stažení balíčků NuGet z Azure Artifacts, NuGet.org nebo jiných externích nebo interních úložišť NuGet.

Následující příklad obnoví řešení z informačního kanálu s oborem projektu ve stejné organizaci.

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

Poznámka

Pokud používáte Ubuntu 24.04 nebo novější, musíte místo úlohy NuGetAuthenticate použít NuGetCommand@2 úlohu s rozhraním příkazového řádku .NET. Další podrobnosti najdete v tématu Podpora novějších hostovaných obrazů Ubuntu.