#pragma checksum (C#-Referenz)#pragma checksum (C# Reference)

Erstellt für Quelldateien Prüfsummen, um beim Debuggen von ASP.NETASP.NET-Seiten zu helfen.Generates checksums for source files to aid with debugging ASP.NETASP.NET pages.

SyntaxSyntax

#pragma checksum "filename" "{guid}" "checksum bytes"  

ParameterParameters

"filename"
Der Name der Datei, die die Überwachung von Änderungen oder Updates erfordertThe name of the file that requires monitoring for changes or updates.

"{guid}"
GUID (Globally Unique Identifier, globaler eindeutiger Bezeichner) für den Hashalgorithmus.The Globally Unique Identifier (GUID) for the hash algorithm.

"checksum_bytes"
Die Zeichenfolge von hexadezimalen Ziffern, die die Bytes der Prüfsumme darstellt.The string of hexadecimal digits representing the bytes of the checksum. Dabei muss es sich um eine gerade Anzahl hexadezimaler Ziffern handeln.Must be an even number of hexadecimal digits. Eine ungerade Anzahl von Ziffern führt zu einer Warnung zur Kompilierzeit, und die Anweisung wird ignoriert.An odd number of digits results in a compile-time warning, and the directive are ignored.

HinweiseRemarks

Der Visual Studio-Debugger verwendet eine Prüfsumme, um sicherzustellen, dass immer die richtige Quelle gefunden wird.The Visual Studio debugger uses a checksum to make sure that it always finds the right source. Der Compiler berechnet die Prüfsumme für eine Quelldatei, und speichert das Ergebnis in der Program Database-Datei (PDB).The compiler computes the checksum for a source file, and then emits the output to the program database (PDB) file. Der Debugger verwendet anschließend die PDB-Datei, um sie mit der Prüfsumme zu vergleichen, die für die Quelldatei berechnet wird.The debugger then uses the PDB to compare against the checksum that it computes for the source file.

Diese Lösung funktioniert nicht bei ASP.NETASP.NET-Projekten, weil die berechnete Prüfsumme für die generierte Quelldatei anstatt für die ASPX-Datei ist.This solution does not work for ASP.NETASP.NET projects, because the computed checksum is for the generated source file, rather than the .aspx file. #pragma checksum stellt für ASP.NETASP.NET-Seiten Unterstützung von Prüfsummen bereit, um dieses Problem zu behandeln.To address this problem, #pragma checksum provides checksum support for ASP.NETASP.NET pages.

Wenn Sie ein ASP.NETASP.NET-Projekt in Visual C# erstellen, enthält die generierte Quelldatei eine Prüfsumme für die ASPX-Datei, von der die Quelle erzeugt wird.When you create an ASP.NETASP.NET project in Visual C#, the generated source file contains a checksum for the .aspx file, from which the source is generated. Der Compiler schreibt anschließend diese Informationen in die PDB-Datei.The compiler then writes this information into the PDB file.

Wenn der Compiler keine #pragma checksum-Direktive in der Datei findet, berechnet er die Prüfsumme und schreibt den Wert in die PDB-Datei.If the compiler encounters no #pragma checksum directive in the file, it computes the checksum and writes the value to the PDB file.

BeispielExample

class TestClass  
{  
    static int Main()  
    {  
        #pragma checksum "file.cs" "{406EA660-64CF-4C82-B6F0-42D48172A799}" "ab007f1d23d9" // New checksum  
    }  
}  

Siehe auchSee Also

C#-ReferenzC# Reference
C#-ProgrammierhandbuchC# Programming Guide
C#-PräprozessoranweisungenC# Preprocessor Directives