IL3002: Tek bir dosya olarak yayımlarken 'RequiresAssemblyFilesAttribute' ile ek açıklamalı üyeleri çağırmaktan kaçının.
Değer | |
---|---|
Kural Kimliği | IL3002 |
Kategori | SingleFile |
Düzeltme bozuk veya bölünemez | Bölüne -mez |
Neden
Bir uygulamayı tek bir dosya olarak yayımladığınızda (örneğin, bir projede özelliğini true
olarak ayarlayarakPublishSingleFile
), özniteliğiyle RequiresAssemblyFilesAttribute
ek açıklama eklenen üyeleri çağırmak tek dosyayla uyumlu değildir. Bu öznitelikle açıklama eklenmiş üyeler derleme dosyalarının diskte olmasını gerektirdiğinden ve tek dosyalı bir uygulamaya eklenmiş derlemeler bellek yüklendiğinden bu çağrılar uyumlu değildir.
Örnek:
[RequiresAssemblyFiles(Message="Use 'MethodFriendlyToSingleFile' instead", Url="http://help/assemblyfiles")]
void MethodWithAssemblyFilesUsage()
{
}
void TestMethod()
{
// IL3002: Using member 'MethodWithAssemblyFilesUsage' which has 'RequiresAssemblyFilesAttribute'
// can break functionality when embedded in a single-file app. Use 'MethodFriendlyToSingleFile' instead. http://help/assemblyfiles
MethodWithAssemblyFilesUsage();
}
İhlalleri düzeltme
'RequiresAssemblyFilesAttribute' özniteliğiyle açıklama ekleyen üyelerin, tek bir dosya olarak yayımlayan kullanıcılara yararlı bilgiler vermeyi amaçlayan bir iletisi vardır. Mevcut kodu özniteliğin iletisine uyarlamayı veya ihlal eden çağrıyı kaldırmayı göz önünde bulundurun.
Uyarıların ne zaman bastırılması gerekiyor?
Mevcut kod 'RequiresAssemblyFilesAttribute' özniteliğinin iletisinde özetlenen öneriye uyarlandığında uyarının gizlenmesi uygundur.