Dường như Visual Studio không xử lý đường dẫn rất dài một cách chính xác khi tạo GUID. Tôi đã xác nhận điều này bằng cách thêm hai tệp khác nhau vào một đường dẫn dài và sao chép hành vi mà bạn đang thấy. Nếu bạn nhìn vào các tệp SomeFile.g.cs vi phạm, bạn sẽ nhận thấy rằng các hướng dẫn cho hai tệp này giống nhau. Rõ ràng Visual Studio chỉ kiểm tra các ký tự đầu tiên x của đường dẫn tệp khi tạo GUID này.
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)
Từ các tập tin .g.cs:
#pragma checksum "..\<snipped>\SomeFileName1.xaml" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "F21D94943016E57893CEB405BE12ADEA"
#pragma checksum "..\<snipped>\SomeFileName2.xaml" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "C67F2F8C841E2C338E5FCDC5037E8454"
Đối với một giải pháp, tôi đoán bạn có thể rút ngắn con đường của bạn hoặc (nhiều khả năng) phớt lờ những cảnh báo này. :)
Nguồn
2009-12-11 20:12:54
Bạn có cơ hội có một số tệp được tạo với đường dẫn thực sự dài không? Cảnh báo này có nghĩa là có hai tệp có cùng tên và Visual Studio không thể xác định được tệp nào để gỡ lỗi, nhưng có thể nó cắt bớt đường dẫn tại một điểm nhất định khi so sánh chúng với nhau. –