在Visual Studio 2008 Team System中,这是我的警告:
Different checksum values given for '<some folder>' ...\Visual Studio 2008\Projects\...
\Debug\...\SomeFile.g.cs
SomeFile.g.cs
文件中的违规行是:
#pragma checksum "..\..\..\..\..\..\...\SomeFile.xaml" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "A18BC47B27EC4695C69B69F1831E3225"
我删除了解决方案中的{em>所有 *.g.cs
个文件并重建了所有警告。这到底是什么意思?
答案 0 :(得分:11)
在生成GUID时,Visual Studio似乎无法正确处理非常长的路径。我通过在长路径中添加两个不同的文件来确认这一点,并重现了您所看到的行为。如果您查看有问题的SomeFile.g.cs文件,您会注意到这两个文件的guid是相同的。显然,Visual Studio仅在生成此GUID时检查文件路径的第一个 x 字符。
C:\Users\Developer\Documents\Visual Studio 2008\Projects\WpfApplication1\WpfApplication1\obj\Debug\LongFolderNameLongFolderNameLongFolderName\LongFolderNameLongFolderNameLongFolderName\LongFolderNameLongFolderNameLongFolderName\SomeFileName1.g.cs(1,1): warning CS1697: Different checksum values given for 'c:\Users\Developer\Documents\Visual Studio 2008\Projects\WpfApplication1\WpfApplication1\LongFolderNameLo'
C:\Users\Developer\Documents\Visual Studio 2008\Projects\WpfApplication1\WpfApplication1\obj\Debug\LongFolderNameLongFolderNameLongFolderName\LongFolderNameLongFolderNameLongFolderName\LongFolderNameLongFolderNameLongFolderName\SomeFileName2.g.cs(1,1): (Related location)
来自.g.cs文件:
#pragma checksum "..\<snipped>\SomeFileName1.xaml" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "F21D94943016E57893CEB405BE12ADEA"
#pragma checksum "..\<snipped>\SomeFileName2.xaml" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "C67F2F8C841E2C338E5FCDC5037E8454"
至于解决方案,我猜你可以缩短你的路径,或者(更有可能)忽略这些警告。 :)