.NET Core uygulamalarını derleme, test etme ve dağıtma
kodunuzu Upload
kodunuzu yeni webapp GitHub veya Azure Repos Upload:
Azure Pipelines oturum açın
Azure Pipelinesoturum açın. oturum açtıktan sonra, tarayıcınız öğesine gider https://dev.azure.com/my-organization-name ve Azure DevOps panonuzu görüntüler.
Seçtiğiniz kuruluş içinde bir Projeoluşturun. Kuruluşunuzda bir projeniz yoksa, başlamak için bir proje oluşturun ekranına bakabilirsiniz. aksi takdirde, panonun sağ üst köşesindeki oluştur Project düğmesini seçin.
İşlem hattını oluşturma
Azure DevOps kuruluşunuzda oturum açın ve projenize gidin.
Pipelinesgidin ve yeni işlem hattı' nı seçin.
ilk olarak GitHub kaynak kodunuzun konumu olarak seçerek sihirbazın adımlarını gözden geçir.
oturum açmak için GitHub yönlendiriliyorsunuz. bu durumda GitHub kimlik bilgilerinizi girin.
Depo listesi göründüğünde, deponuzu seçin.
Azure Pipelines uygulamasını yüklemek için GitHub yönlendiriliyorsunuz. Öyleyse, yüklemeyi Onayla' yı seçin.
Yapılandır sekmesi göründüğünde ASP.NET Core' yi seçin.
Yeni ardışık düzen belirdiğinde, ne yaptığını görmek için YAML 'ye göz atın. Hazırsanız Kaydet ve Çalıştır' ı seçin.

Deponuza yeni bir Azure-Pipelines. yıml dosyası uygulamanız istenir. İletiden memnun olduktan sonra Kaydet ' i seçin ve yeniden çalıştırın .
İşlem hattınızı eylem bölümünde izlemek isterseniz, yapı işini seçin.
kodunuzun ASP.NET Core şablonu için iyi bir eşleşme görünmediğinden, sizin için otomatik olarak oluşturduğumuz bir işlem hattı oluşturdunuz ve çalıştırdınız.
Artık, deponuzda özelleştirmeniz için hazır bir YAML işlem hattı (
azure-pipelines.yml) çalışıyor!işlem hattınızda değişiklik yapmaya hazırsanız, Pipelines sayfasında seçin ve sonra dosyayı düzenleyin .
İşlem hattınızı özelleştirmenin daha yaygın yöntemlerinden bazılarını öğrenmek için aşağıdaki bölümlere bakın.
YAML
azure-pipelines.ymlDeponuzda bir dosya ekleyin. Derlemeniz için bu kod parçacığını özelleştirin.
trigger:
- master
pool: Default
variables:
buildConfiguration: 'Release'
# do this before all your .NET Core tasks
steps:
- task: DotNetCoreInstaller@2
inputs:
version: '2.2.402' # replace this value with the version that you need for your project
- script: dotnet build --configuration $(buildConfiguration)
displayName: 'dotnet build $(buildConfiguration)'
Bir işlem hattı oluşturun (nasıl olduğunu bilmiyorsanız, ilk işlem hattınızı oluşturma) ve şablon Için YAML' yi seçin.
İşlem hatlarınız için Aracı havuzunu ve YAML dosya yolunu ayarlayın.
İşlem hattını kaydedin ve bir derlemeyi kuyruğa alın. Derleme #nnnnnnnn. n sıraya alınmış ileti görüntülendiğinde, işlem hattınızı eylemde görmek için sayı bağlantısını seçin.
İşlem hattınızda değişiklik yapmaya hazırsanız, düzenleyin .
İşlem hattınızı özelleştirmenin daha yaygın yöntemlerinden bazılarını öğrenmek için aşağıdaki bölümlere bakın.
Klasik
İşlem hattı oluşturun (nasıl olduğunu bilmiyorsanız, bkz. ilk işlem hattınızı oluşturma). Şablon için boş Işlem hattı seçin.
Görev kataloğunda .NET Core görevini bulun ve ekleyin. Bu görev,
dotnet buildörnek depodaki kodu oluşturmak için çalıştırılır.İşlem hattını kaydedin ve bir derlemeyi kuyruğa alın. Derleme #nnnnnnnn. n sıraya alınmış ileti görüntülendiğinde, işlem hattınızı eylemde görmek için sayı bağlantısını seçin.
Artık özelleştirmeniz için hazır olan çalışır durumda bir işlem hattı var!
İşlem hattınızda değişiklik yapmaya hazırsanız, düzenleyin .
İşlem hattınızı özelleştirmenin daha yaygın yöntemlerinden bazılarını öğrenmek için aşağıdaki bölümlere bakın.
Yapı ortamı
.net Core projelerinizi Windows, Linux veya macos üzerinde kendi altyapınızı ayarlamaya gerek kalmadan derlemek için Azure Pipelines kullanın. Azure Pipelines ' deki Microsoft tarafından barındırılan aracılar , .net Core sdk 'larının önceden yüklenmiş birkaç sürümünü içerir.
Ubuntu 18,04, YAML dosyasında ayarlanır.
pool:
vmImage: 'ubuntu-18.04' # examples of other options: 'macOS-10.15', 'windows-2019'
Daha fazla örnek için bkz. görüntülerin ve havuzun tam listesi için Microsoft tarafından barındırılan aracılar .
Microsoft tarafından barındırılan aracılar .NET Core SDK eski sürümlerinden bazılarını içermez. Bunlar genellikle ön sürüm sürümlerini de içermez. Microsoft tarafından barındırılan aracılarda bu tür SDK 'lara ihtiyacınız varsa, UseDotNet@2 görevini YAML dosyanıza ekleyin.
.NET Core 3.0. x ' i hedefleyen testleri çalıştırmak için 5.0. x SDK 'sının, derleme ve 3.0. x için Önizleme sürümünü yüklemek için şu kod parçacığını ekleyin:
steps:
- task: UseDotNet@2
inputs:
version: '5.0.x'
includePreviewVersions: true # Required for preview versions
- task: UseDotNet@2
inputs:
version: '3.0.x'
packageType: runtime
Windows aracıları zaten bir .net Core çalışma zamanı içeriyor. Daha yeni bir SDK yüklemek için, performMultiLevelLookuptrue Bu kod parçacığında olarak ayarlayın:
steps:
- task: UseDotNet@2
displayName: 'Install .NET Core SDK'
inputs:
version: 5.0.x
performMultiLevelLookup: true
includePreviewVersions: true # Required for preview versions
İpucu
Alternatif olarak, kendi kendine barındırılan bir aracı ayarlayabilir ve araç yükleyicisini çalıştırmanın maliyetini kaydedebilirsiniz. Bkz. Linux, macosveya Windows. Şirket içinde barındırılan aracıları, büyük bir deponuz varsa veya artımlı derlemeler çalıştırırsanız ek zaman kazanmak için de kullanabilirsiniz. şirket içinde barındırılan bir aracı, Azure DevOps tarafından resmi olarak desteklenmeyen veya yalnızca şirket içinde veya şirket içi ortamlarınızda bulunan önizleme veya özel sdk 'ları kullanmanıza da yardımcı olabilir.
Windows, Linux veya macos 'ta .NET Core SDK ve çalışma zamanını kullanarak .net Core projelerinizi oluşturabilirsiniz. Yapılarınız kendi kendine barındırılan bir aracıdaçalışır. Aracıda yüklü .NET Core SDK ve çalışma zamanının gerekli sürümüne sahip olduğunuzdan emin olun.
Bağımlılıkları geri yükleme
NuGet, derolmadığınız koda bağlı olmanın popüler bir yoludur. dotnet restorekomutu dotnet restore görevi aracılığıyla veya doğrudan işlem hattınızdaki bir betikte çalıştırarak, proje dosyasında belirtilen NuGet paketleri ve projeye özel araçları indirebilirsiniz.
Azure Artifacts, NuGet. org veya başka bir dış ya da dahili NuGet deposundan NuGet paketlerini indirebilirsiniz. .net Core görevi, paketleri kimliği doğrulanmış NuGet akışlarından geri yüklemek için özellikle yararlıdır.
Bu işlem hattı dotnet restore , dotnet restorebir yapıt akışı kullanır.
trigger:
- master
pool:
vmImage: 'windows-latest'
variables:
buildConfiguration: 'Release'
steps:
- task: DotNetCoreCLI@2
inputs:
command: 'restore'
feedsToUse: 'select'
vstsFeed: 'my-vsts-feed' # A series of numbers and letters
- task: DotNetCoreCLI@2
inputs:
command: 'build'
arguments: '--configuration $(buildConfiguration)'
displayName: 'dotnet build $(buildConfiguration)'
NuGet. org ' dan NuGet paketlerini indirebilirsiniz.
dotnet restore dahili olarak, NuGet.exe .NET Core SDK ile paketlenmiş bir sürümünü kullanır. dotnet restore yalnızca .NET Core proje dosyalarında belirtilen paketleri geri yükleyebilir .csproj .
çözümünüzde bir Microsoft .NET Framework projesi de varsa veya package.json bağımlılıklarınızı belirtmek için kullanıyorsanız, bu bağımlılıkları geri yüklemek için package.json görevini de kullanmanız gerekir.
.NET Core SDK sürüm 2,0 ve daha yeni sürümlerde paketler, gibi diğer komutları çalıştırırken otomatik olarak geri yüklenir dotnet build .
.NET Core SDK sürüm 2,0 ve daha yeni sürümlerde paketler, gibi diğer komutları çalıştırırken otomatik olarak geri yüklenir dotnet build .
Ancak, kimliği doğrulanmış bir akış kullanıyorsanız paketleri geri yüklemek için yine de .NET Core görevini kullanmanız gerekebilir.
bağlantı sorunları nedeniyle derlemeleriniz bazen NuGet. org 'dan geri yüklenirken başarısız olursa, yukarı akış kaynaklarıyla Azure Artifacts kullanabilir ve paketleri önbelleğe alabilirsiniz. Azure Artifacts bağlantı sırasında işlem hattının kimlik bilgileri otomatik olarak kullanılır. bu kimlik bilgileri genellikle Project koleksiyonu derleme hizmeti hesabından türetilir.
bir NuGet deposu belirtmek isterseniz, url 'leri NuGet.config deponuzdaki bir dosyaya koyun.
akışlarınızın kimliği doğrulandıysa, Project Ayarlaraltındaki hizmetler sekmesinde bir NuGet hizmet bağlantısı oluşturarak kimlik bilgilerini yönetin.
Microsoft tarafından barındırılan aracılar kullanıyorsanız, her bir derlemeyi her çalıştırdığınızda yeni bir makine alırsınız, bu da paketleri her seferinde geri yükleme anlamına gelir. Bu geri yükleme işlemi, önemli miktarda zaman alabilir. bu sorunu gidermek için Azure Artifacts veya şirket içinde barındırılan bir aracı kullanabilirsiniz. bu durumda, paket önbelleğini kullanma avantajını elde edersiniz.
Paketleri dış özel akıştan geri yüklemek için .NET Core görevini kullanın:
# do this before your build tasks
steps:
- task: DotNetCoreCLI@2
displayName: Restore
inputs:
command: restore
projects: '**/*.csproj'
feedsToUse: config
nugetConfigPath: NuGet.config # Relative to root of the repository
externalFeedCredentials: <Name of the NuGet service connection>
# ...
NuGet hizmeti bağlantıları hakkında daha fazla bilgi için bkz. NuGet akışlara yayımlama.
İşlem hattındaki görevleri seçin. Yapı görevlerinizi çalıştıran işi seçin. Sonra + Bu işe yeni bir görev eklemeyi seçin.
Görev kataloğunda .NET Core görevini bulun ve ekleyin.
Görevi seçin ve komutiçin geri yükle' yi seçin.
Bu görev için gereken diğer seçenekleri belirtin. Sonra derlemeyi kaydedin.
Not
özel akışın NuGet.config dosyanızda belirtildiğinden ve bu kimlik bilgilerinin NuGet hizmet bağlantısında belirtildiğinden emin olun.
Projenizi oluşturma
.NET Core projenizi, işlem dotnet build hattınızda komutunu çalıştırarak veya .NET Core görevini kullanarak oluşturursunuz.
Projenizi .NET Core görevini kullanarak derlemek için, dosyanıza aşağıdaki kod parçacığını ekleyin azure-pipelines.yml :
steps:
- task: DotNetCoreCLI@2
displayName: Build
inputs:
command: build
projects: '**/*.csproj'
arguments: '--configuration $(buildConfiguration)' # Update this to match your need
İşlem hattınızda herhangi bir özel DotNet komutunu çalıştırabilirsiniz. Aşağıdaki örnekte, .NET küresel aracının nasıl yükleneceği ve kullanılacağı gösterilmektedir:
steps:
- task: DotNetCoreCLI@2
displayName: 'Install dotnetsay'
inputs:
command: custom
custom: tool
arguments: 'install -g dotnetsay'
Derleme
İşlem hattındaki görevleri seçin. Yapı görevlerinizi çalıştıran işi seçin. Sonra + Bu işe yeni bir görev eklemeyi seçin.
Görev kataloğunda .NET Core görevini bulun ve ekleyin.
Görevi seçin ve komutiçin Oluştur veya Yayımla' yı seçin.
Bu görev için gereken diğer seçenekleri belirtin. Sonra derlemeyi kaydedin.
Araç yükler
Windows çalıştıran derlemede dotnetdeyin gibi bir .net Core küresel aracı yüklemek için aşağıdaki adımları uygulayın:
.NET Core görevini ekleyin ve aşağıdaki özellikleri ayarlayın:
- Komut: özel.
- Projelerin yolu: boş bırakın.
- Özel komut: aracı.
- Bağımsız değişkenler: .
- Komut: özel.
Bir komut satırı görevi ekleyin ve aşağıdaki özellikleri ayarlayın:
- Betik: .
Testlerinizi çalıştırın
Deponuzda test projeleriniz varsa, MSTest, xUnit ve NUnit gibi test çerçeveleri kullanarak birim testlerini çalıştırmak için .NET Core görevini kullanın. Bu işlevsellik için, test projesinin Microsoft. net. test. SDK sürüm 15.8.0 veya üstüne başvurması gerekir. Test sonuçları, hizmette otomatik olarak yayımlanır. Bu sonuçlar daha sonra yapı özetinde size sunulur ve başarısız testler ve test zamanlaması analiziyle ilgili sorunları gidermek için kullanılabilir.
Dosyanıza aşağıdaki kod parçacığını ekleyin azure-pipelines.yml :
steps:
# ...
# do this after other tasks such as building
- task: DotNetCoreCLI@2
inputs:
command: test
projects: '**/*Tests/*.csproj'
arguments: '--configuration $(buildConfiguration)'
Diğer bir seçenek de dotnet test komutu belirli bir günlükçü ile çalıştırmak ve sonra dotnet test görevini kullanmaktır:
steps:
# ...
# do this after your tests have run
- script: dotnet test <test-project> --logger trx
- task: PublishTestResults@2
condition: succeededOrFailed()
inputs:
testRunner: VSTest
testResultsFiles: '**/*.trx'
Testetmek için komut kümesini içeren .NET Core görevini kullanın. Projelerin yolu çözümünüzdeki test projelerine başvurmalıdır.
Kod kapsamını topla
Windows platformunda derleme yapıyorsanız, kod kapsamı ölçümleri yerleşik kapsam veri toplayıcısı kullanılarak toplanabilir. Bu işlevsellik için, test projesinin Microsoft. net. test. SDK sürüm 15.8.0 veya üstüne başvurması gerekir. Testleri çalıştırmak için .NET Core görevini kullanırsanız, kapsam verileri sunucuya otomatik olarak yayımlanır. . Coverage dosyası Visual Studio ' de görüntülenmek üzere derleme özetinden indirilebilir.
Dosyanıza aşağıdaki kod parçacığını ekleyin azure-pipelines.yml :
steps:
# ...
# do this after other tasks such as building
- task: DotNetCoreCLI@2
inputs:
command: test
projects: '**/*Tests/*.csproj'
arguments: '--configuration $(buildConfiguration) --collect "Code coverage"'
Komutu çalıştırmayı seçerseniz dotnet test , test sonuçları günlükçüsü ve kapsam seçeneklerini belirtin. Ardından test sonuçları Yayımla görevini kullanın:
steps:
# ...
# do this after your tests have run
- script: dotnet test <test-project> --logger trx --collect "Code coverage"
- task: PublishTestResults@2
inputs:
testRunner: VSTest
testResultsFiles: '**/*.trx'
Yapı işinize .NET Core görevini ekleyin ve aşağıdaki özellikleri ayarlayın:
- Komut: test.
- Projelerin yolu: çözümünüzdeki test projelerine başvurmalıdır.
- Bağımsız değişkenler: .
Test sonuçlarını yayımla seçeneğinin seçili olduğundan emin olun.
Kod kapsamı ölçümlerini, kapak Let ile toplayın
Linux veya macOS üzerinde oluşturuyorsanız, kod kapsamı ölçümlerini toplamak için Kapak Let veya benzer bir araç kullanabilirsiniz.
Kod kapsamı sonuçları, kod kapsamı sonuçları Yayımla görevi kullanılarak sunucuya yayımlanabilir. Bu işlevi kullanmak için kapsam aracının Cobertura veya JaCoCo kapsam biçiminde sonuçlar üretecek şekilde yapılandırılması gerekir.
Testleri çalıştırmak ve kod kapsamını kapak ile yayımlamak için:
- .net
coverlet.msbuild4 ' ün altında .net projeleri için test projenizdeki NuGet paketine bir başvuru ekleyin. .net 5 için NuGet paketine bir başvuru ekleyincoverlet.collector. - Bu kod parçacığını dosyanıza ekleyin
azure-pipelines.yml:
- task: UseDotNet@2
inputs:
version: '5.0.x'
includePreviewVersions: true # Required for preview versions
- task: DotNetCoreCLI@2
displayName: 'dotnet build'
inputs:
command: 'build'
configuration: $(buildConfiguration)
- task: DotNetCoreCLI@2
displayName: 'dotnet test'
inputs:
command: 'test'
arguments: '--configuration $(buildConfiguration) --collect:"XPlat Code Coverage" -- DataCollectionRunSettings.DataCollectors.DataCollector.Configuration.Format=cobertura'
publishTestResults: true
projects: 'MyTestLibrary' # update with your test project directory
- task: PublishCodeCoverageResults@1
displayName: 'Publish code coverage report'
inputs:
codeCoverageTool: 'Cobertura'
summaryFileLocation: '$(Agent.TempDirectory)/**/coverage.cobertura.xml'
Kodunuzu paketleyin ve sunun
uygulamanızı derleyip test ettikten sonra, derleme çıkışını Azure Pipelines veya TFS 'ye yükleyebilir, bir NuGet paketi oluşturabilir ve yayımlayabilir ya da yapı çıkışını bir web uygulamasına dağıtılacak bir .zip dosyasına paketleyebilirsiniz.
Yapıtları Azure Pipelines yayımlama
.NET derlemenizeait çıktıyı yayımlamak için
dotnet publish --output $(Build.ArtifactStagingDirectory)CLI üzerinde çalıştırın veya Yayımla komutuyla DotNetCoreCLI@2 görevini ekleyin.- Yapıtı yapıyı Yayımla görevini kullanarak yayımlayın.
Dosyanıza aşağıdaki kod parçacığını ekleyin azure-pipelines.yml :
steps:
- task: DotNetCoreCLI@2
inputs:
command: publish
publishWebProjects: True
arguments: '--configuration $(BuildConfiguration) --output $(Build.ArtifactStagingDirectory)'
zipAfterPublish: True
# this code takes all the files in $(Build.ArtifactStagingDirectory) and uploads them as an artifact of your build.
- task: PublishPipelineArtifact@1
inputs:
targetPath: '$(Build.ArtifactStagingDirectory)'
artifactName: 'myWebsiteName'
Not
dotNetCoreCLI@2Görevin publishWebProjects Varsayılan olarak dotNetCoreCLI@2 olarak ayarlanmış bir girişi vardır. Bu, varsayılan olarak deponuzdaki Tüm Web projelerini yayımlar. GitHub üzerindeki açık kaynak görevdedaha fazla yardım ve bilgi bulabilirsiniz.
Yayımlamadan önce, derleme dizinine daha fazla dosya kopyalamak için yardımcı program: dosyaları Kopyala' yı kullanın.
NuGet bir akışa yayımlama
bir NuGet paketi oluşturmak ve yayımlamak için aşağıdaki kod parçacığını ekleyin:
steps:
# ...
# do this near the end of your pipeline in most cases
- script: dotnet pack /p:PackageVersion=$(version) # define version variable elsewhere in your pipeline
- task: NuGetAuthenticate@0
input:
nuGetServiceConnections: '<Name of the NuGet service connection>'
- task: NuGetCommand@2
inputs:
command: push
nuGetFeedType: external
publishFeedCredentials: '<Name of the NuGet service connection>'
versioningScheme: byEnvVar
versionEnvVar: version
NuGet paketlerini sürüm oluşturma ve yayımlama hakkında daha fazla bilgi için bkz. NuGet akışlara yayımlama.
Bir web uygulaması dağıtma
Bir Web uygulamasına yayımlamaya hazırlamış bir .zip dosya arşivi oluşturmak için aşağıdaki kod parçacığını ekleyin:
steps:
# ...
# do this after you've built your app, near the end of your pipeline in most cases
# for example, you do this before you deploy to an Azure web app on Windows
- task: DotNetCoreCLI@2
inputs:
command: publish
publishWebProjects: True
arguments: '--configuration $(BuildConfiguration) --output $(Build.ArtifactStagingDirectory)'
zipAfterPublish: True
Bu Arşivi bir Web uygulamasında yayımlamak için bkz. Azure Web Apps dağıtımı.
Yapıtları Azure Pipelines yayımlama
derlemenize ait çıktıyı Azure Pipelines veya TFS 'ye yayımlamak için yayımla Artifacts görevini kullanın.
NuGet bir akışa yayımlama
kodunuzu NuGet bir akışta yayınlamak istiyorsanız aşağıdaki adımları uygulayın:
Komut olarak ayarlanmış bir .NET Core görevi kullanın.
Bir web uygulaması dağıtma
Yayımlamak için komutuyla ayarlanan bir .NET Core görevi kullanın.
.zip dosya arşivi oluşturma seçeneğini seçtiğinizden emin olun.
Bu Arşivi bir Web uygulamasında yayımlamak için bkz. Azure Web Apps dağıtımı.
Bir görüntü oluşturun ve kapsayıcı kayıt defterine gönderin
Uygulamanız için bir görüntü oluşturupbir kapsayıcı kayıt defterinegönderebilirsiniz.
Sorun giderme
projenizi geliştirme makinenizde derleyebilir, ancak Azure Pipelines veya TFS üzerinde oluşturma konusunda sorun yaşıyorsanız, aşağıdaki olası nedenleri ve düzeltme eylemlerini araştırın:
- Microsoft tarafından barındırılan aracılarda .NET Core SDK ön sürüm sürümlerini yüklemeiyoruz. .NET Core SDK yeni bir sürümü kullanıma sunulduktan sonra, Azure Pipelines üzerinde çalıştığı tüm veri merkezlerine bu kadar birkaç hafta sürebilir. Bu piyasaya çıkma işleminin bitmesini beklemeniz gerekmez. Microsoft tarafından barındırılan aracılarda .NET Core SDK istenen sürümünü yüklemek için, bu kılavuzda açıklanan .NET Core araç yükleyicisinikullanabilirsiniz.
Geliştirme makinenizde .NET Core SDK ve çalışma zamanının sürümlerinin aracıdaki olanlarla eşleştiğinden emin olun.
dotnet --version.NET Core SDK sürümünü yazdırmak için işlem hattınızda bir komut satırı betiği ekleyebilirsiniz. Bu kılavuzda açıklandığı gibi .NET Core araç yükleyicisinikullanın, aracıdaki aynı sürümü dağıtmak veya projelerinizi ve geliştirme makinenizi .NET Core SDK yeni sürümüne güncelleştirmeniz gerekir.Visual Studio ıde 'de, işlem hattınızda kodlanmayan bir mantık kullanıyor olabilirsiniz. Azure Pipelines veya TFS, görevlerde belirttiğiniz komutların her birini yeni bir işlemde diğeri bir kez çalıştırır. derleme kapsamında çalıştırılan tam komutları görmek için Azure Pipelines veya TFS derlemesi günlüklerine bakın. Sorunu bulmak için aynı komutları geliştirme makinenizde aynı sırada yineleyin.
bazı .net Core projelerini ve bazı .NET Framework projelerini içeren karışık bir çözümünüz varsa, dosyalarda belirtilen paketleri geri yüklemek için NuGet görevini de kullanmalısınız . benzer şekilde, .NET Framework projelerini derlemek için MSBuild veya Visual Studio derleme görevleri eklemeniz gerekir.
yapılandırmalar geri yüklenirken tek zaman başarısız olursa, NuGet. kuruluş sorun yaşıyor veya Azure veri merkezi ile NuGet. org arasında ağ sorunları var. bunlar denetimizin altında değildir ve NuGet Azure Artifacts kullanıp kullanmayacağınızı araştırmanıza gerek duyabilirsiniz. bir yukarı akış kaynağı olarak kuruluş, derlemelerinizin güvenilirliğini artırır.
bazen, .NET Core SDK veya Visual Studio yeni bir sürümü olan barındırılan görüntülerle ilgili bir güncelleştirmeyi kullanıma sunduğumuz bir şey, derlemenizi kesintiye uğratır. bu durum, örneğin NuGet aracının daha yeni bir sürümü veya özelliği SDK ile gönderiliyorsa oluşabilir. Bu sorunları yalıtmak için, derlemede kullanılan .NET Core SDK sürümünü belirtmek için .NET Core aracı yükleyicisi görevini kullanın.
SSS
Azure Artifacts ve TFS Paket Yönetimi hizmeti hakkında nereden daha fazla bilgi edinebilirim?
Azure Artifacts ve TFS 'de Paket Yönetimi
.NET Core komutları hakkında nereden daha fazla bilgi edinebilirim?
Çözümünüzde testleri çalıştırma hakkında nereden daha fazla bilgi edinebilirim?
.NET Core projelerinde birim testi
Görevler hakkında nereden daha fazla bilgi edinebilirim?
Derleme ve yayınlama görevleri
Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 | TFS 2017
.NET Core projelerinizi otomatik olarak derlemek ve test etmek için bir işlem hattı kullanın. Şunları nasıl yapacağınızı öğrenin:
- Microsoft tarafından barındırılan veya şirket içinde barındırılan aracılarla derleme ortamınızı ayarlayın.
- Bağımlılıkları geri yükleyin, projenizi derleyin ve .NET Core CLI göreviyle veya bir komut dosyasıylatest edin.
- Kod kapsamı sonuçlarını yayımlamak için kod kapsamını Yayımla görevini kullanın.
- .NET Core CLI görevi ve derleme yapıtlarını Yayımla göreviile kodunuzu paketleyin ve sunun.
- NuGet bir akışayayımlayın.
- Web uygulamanızı Azure 'adağıtın.
Not
.NET Framework projelerine yönelik yardım için bkz. .NET Framework ile derleme ASP.NET uygulamalar.
Not
Microsoft Team Foundation Server (TFS) 2018 ve önceki sürümlerde, derleme ve yayın işlem hatlarıtanımlarolarak adlandırılır, çalışmalaraderlemelerdenir, hizmet bağlantılarınahizmet uç noktalarıdenir, aşamalarortamlarolarak adlandırılır ve işleraşamalarolarak adlandırılır.
Not
Bu kılavuz TFS sürüm 2017,3 ve üzeri için geçerlidir.
İlk işlem hattınızı oluşturma
Azure Pipelines yeni misiniz? Bu durumda, diğer bölümlere geçmeden önce bu bölümü denemeniz önerilir.
.NET projesi oluşturma
üzerinde çalışmak için bir .net projeniz yoksa yeni bir tane oluşturun ve kodunuzu GitHub deponuza veya Azure Repos karşıya yükleyin. En son .net 6,0 SDK 'yı yükleyerek başlayın.
Yeni bir .NET 6 WebApp oluşturun.
dotnet new webapp -f net6.0
Aynı Terminal oturumundan, uygulamayı dotnet run proje dizininizdeki komutunu kullanarak yerel olarak çalıştırın.
dotnet run