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.
Eski üye 'memberA' eski olmayan 'memberB' üyesini geçersiz kılar.
Genellikle, eski olarak işaretlenmiş bir üye, eski olarak işaretlenmemiş bir üyeyi geçersiz kılmamalıdır. Bu uyarı Visual Studio 2008'de oluşturulur ancak Visual Studio 2005'te oluşturulmaz.
Bu hatayı düzeltmek için
Obsolete Geçersiz kılınan üyeden özniteliği kaldırın veya temel sınıf üyesine ekleyin.
Örnek
// CS0809.cs
public class Base
{
public virtual void Test1()
{
}
}
public class C : Base
{
[System.Obsolete()]
public override void Test1() // CS0809
{
}
}
Eski olarak tanınan yöntemler
Derleyici uyarısının CS0809 , aslında eski yöntemi çağırırken hiçbir CS0618 uyarıya yol açacağını unutmayın.
Aşağıdaki örnekte derleyici, çağrılırken derleyici tarafından tanınan bildirim türetilmiş sınıfı Deriveddeğil, temel sınıfında Baseolduğundan yöntemin Test kullanımdan kaldırıldığı konusunda uyarı vermez:
class Base
{
public virtual void Test() {}
}
class Derived : Base
{
[System.Obsolete()]
public override void Test() { }
}
static class Program
{
public static void Main()
{
Derived derived = new();
b.Foo(); // No CS0618
}
}
Bunu düzeltmek için özniteliğini Obsolete de temel sınıfa ekleyin.