Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
MSBuild 17.14'te başlayarak, özel kültür kaynak işlemesi artık varsayılan olarak etkin değildir. Kullanıcıların bu özelliği etkinleştirmek için açıkça kabul etmesi gerekir. Bu değişiklik, kültür kodlarına benzeyen dizinlerin otomatik olarak algılanmasından kaynaklanan istenmeyen davranışları önler.
Sürüm kullanıma sunulmuştur
MSBuild 17.14
Uyarı
Bu değişiklik MSBuild'in davranışını etkilediğinden, .NET'in desteklenen iki sürümünü etkiler: .NET 10 Preview 1 ve .NET 9.0.2. Özel kültür değişikliği için saydam destek .NET SDK 9.0.200'de kullanıma sunulmuştur ve bunu kabul eden değişiklik .NET SDK 9.0.300'dedir.
Önceki davranış
MSBuild daha önce kültür kodlarına (örneğin, en-US
, fr-FR
) benzeyen adlara sahip dizinleri varsayılan olarak kültüre özgü kaynak dizinleri olarak ele alır. Bu davranış bazen karma tabanlı veya teknik adlara sahip olanlar gibi, derleme işleminde istenmeyen kaynak derlemelerine yol açan ilişkisiz dizinleri de içeriyordu.
Yeni davranış
- Özel kültür kaynak işlemesi varsayılan olarak devre dışıdır.
- Bu özelliği etkinleştirmek için proje özelliğini
EnableCustomCulture
olaraktrue
ayarlayın. -
CustomCultureExcludeDirectories
Özel kültür işlemenin dışında tutulacak dizin adlarının noktalı virgülle ayrılmış listesini belirtmek için özelliğini kullanın.
Kesinti yaratan değişiklik türü
Bu, bir davranış değişikliğidir.
Değişiklik nedeni
Kültüre özgü kaynak dizinlerinin otomatik olarak algılanması, dizin adları tesadüfen kültür kodlarıyla eşleştiğinde öngörülemeyen derleme davranışına neden oldu. Açık kabul gerektiren, daha öngörülebilir derlemeler sağlar ve kullanıcılara kaynak işleme üzerinde daha fazla denetim sağlar.
Önerilen eylem
Derleme işleminiz özel kültür kaynak işlemeye dayalıysa:
- Proje özelliğini
EnableCustomCulture
olaraktrue
ayarlayın. - İsteğe bağlı olarak, belirli dizinlerin kültür kaynakları olarak değerlendirilmesini dışlamak için özelliğini kullanın
CustomCultureExcludeDirectories
.
Etkilenen API'ler
Yok.