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.
Neden
Bir uygulamayı Yerel AOT olarak yayımladığınızda (bir projede PublishAot özelliği true olarak ayarlayarak), RequiresDynamicCodeAttribute özniteliğiyle açıklama eklenmiş üyeleri çağırmak, çalışma zamanında özel durumlar (exceptions) ile sonuçlanabilir. Bu öznitelikle işaretlenmiş üyeler, çalışma zamanında dinamik olarak yeni kod oluşturma olanağı gerektirebilir ve Yerel AOT yayımlama modeli, çalışma zamanında yerel kod oluşturmanın bir yolunu sağlamaz.
Kural açıklaması
RequiresDynamicCodeAttribute üyenin çalışma zamanında kod oluşturmayı gerektirebilecek koda başvurduğunu gösterir.
Örnek
// AOT analysis warning IL3050: Program.<Main>$(String[]): Using member 'System.Type.MakeGenericType(Type[])'
// which has 'RequiresDynamicCodeAttribute' can break functionality when AOT compiling. The native code for
// this instantiation might not be available at runtime.
typeof(Generic<>).MakeGenericType(unknownType);
class Generic<T> { }
struct SomeStruct { }
İhlalleri düzeltme
Özniteliğine RequiresDynamicCodeAttribute ek açıklama ekleyen üyeler, Yerel AOT olarak yayımlayan kullanıcılara yararlı bilgiler sağlayan bir iletiye sahiptir. Mevcut kodu özniteliğin iletisine uyarlamayı veya ihlal eden çağrıyı kaldırmayı göz önünde bulundurun.
ile açıklama ekleyen RequiresDynamicCodeAttribute bazı API'ler, belirli bir düzende çağrıldığında uyarı tetiklemez. Daha fazla bilgi için bkz . RequiresDynamicCode olarak işaretlenmiş iç API'ler.