Bagikan melalui


Mengaktifkan penelusuran kesalahan dan diagnostik dengan Tautan Sumber

Source Link adalah teknologi yang memungkinkan pengalaman debugging sumber kelas satu untuk biner. Dengan pustaka yang mendukung Tautan Sumber, debugger dapat mengunduh file sumber yang mendasarinya saat Anda masuk, dan Anda dapat mengatur titik henti/titik pelacakan seperti yang Anda lakukan dengan sumber lain. Ini juga memungkinkan alat analisis untuk dengan mudah menemukan kode sumber yang benar saat men-debug lingkungan produksi seperti Azure.

Anda dapat mengaktifkan pengalaman Source Link di proyek .NET Anda sendiri dengan mengatur beberapa properti dan menambahkan PackageReference ke paket Tautan Sumber:

<Project Sdk="Microsoft.NET.Sdk">
 <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
 
    <!-- Optional: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element) -->
    <PublishRepositoryUrl>true</PublishRepositoryUrl>
 
    <!-- Optional: Embed source files that are not tracked by the source control manager in the PDB -->
    <EmbedUntrackedSources>true</EmbedUntrackedSources>
  
    <!-- Optional: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
    <IncludeSymbols>true</IncludeSymbols>
    <SymbolPackageFormat>snupkg</SymbolPackageFormat>
  </PropertyGroup>
  <ItemGroup>
    <!-- This assumes GitHub source control but other repo options are available --> 
    <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.1.1" PrivateAssets="All"/>
  </ItemGroup>
</Project>

Simbol berbagi

Setelah mengaktifkan Source Link dalam proyek, Anda harus memastikan bahwa file simbol (PDB) yang dibuat selama proses build tersedia untuk Visual Studio (atau alat analisis Anda). Anda dapat mendistribusikan PDB bersama aplikasi Anda (atau dalam paket NuGet). Atau Anda dapat menyematkan file simbol di aplikasi atau rakitan dengan pengaturan proyek berikut.

<DebugType>embedded</DebugType>

Jika aplikasi Anda didistribusikan sebagai pustaka melalui paket yang diterbitkan ke NuGet.org, disarankan untuk membangun paket simbol dan menerbitkannya ke NuGet.org juga. Simbol yang tersedia di server simbol NuGet.org memungkinkan debugger mengunduhnya saat diperlukan.

Catatan

Simbol penyematan tidak selalu direkomendasikan untuk paket NuGet karena meningkatkan ukuran, dan dengan demikian waktu pemulihan untuk proyek yang menggunakan paket Anda.

Penyedia kontrol sumber alternatif

Paket Tautan Sumber tersedia untuk beberapa penyedia kontrol sumber: