Link do źródła
Link źródłowy to technologia, która umożliwia debugowanie kodu źródłowego zestawów .NET z pakietu NuGet przez deweloperów. Link źródłowy jest wykonywany podczas tworzenia pakietu NuGet i osadzania metadanych kontroli źródła wewnątrz zestawów i pakietu. Deweloperzy, którzy pobierają pakiet i mają włączony link źródłowy w programie Visual Studio, mogą przejść do kodu źródłowego. Link źródłowy udostępnia metadane kontroli źródła w celu utworzenia doskonałego środowiska debugowania.
Pokaz linku źródłowego
Korzystanie z linku źródłowego
Instrukcje dotyczące korzystania z linku źródłowego można znaleźć w repozytorium GitHub dotnet/sourcelink .
Możesz użyć aplikacji klasycznej Eksploratora pakietów NuGet lub witryny internetowej nuget.info , aby potwierdzić, że metadane linku źródłowego zostały pomyślnie osadzone w pakiecie. Sprawdź, czy Repository
metadane są obecne z identyfikatorem zatwierdzenia i czy pliki .pdb znajdują się w .dll każdego obiektu docelowego.
✔️ ROZWAŻ użycie linku źródłowego, aby dodać metadane kontroli źródła do zestawów i pakietów NuGet.
Napiwek
Możesz jeszcze bardziej ulepszyć środowisko debugowania dewelopera, dodając atrybuty debugera do typów.
- DebuggerDisplayAttribute może dostosować sposób wyświetlania klasy lub pola w oknach zmiennych debugera.
- DebuggerStepThroughAttribute Instruuje debugera, aby przechodził przez kod zamiast przechodzić do kodu.
- DebuggerBrowsableAttribute określa, czy element członkowski jest wyświetlany w oknach zmiennych debugera.
✔️ ROZWAŻ opublikowanie plików symboli (*.pdb
).
Aby uzyskać najlepsze środowisko debugowania, biblioteka powinna publikować pliki symboli, a także używać linku źródłowego. Aby uzyskać więcej informacji na temat plików symboli i pakietów symboli, zobacz Pakiety symboli.
✔️ ROZWAŻ włączenie kompilacji deterministycznych.
Kompilacje deterministyczne umożliwiają weryfikację, że wynikowy plik binarny został skompilowany z określonego źródła i zapewnia możliwość śledzenia. Aby uzyskać więcej informacji na temat deterministycznych kompilacji i instrukcji dotyczących ich włączania, zobacz Deterministyczne kompilacje.