C Sharp Interface imi İmplement Eden Sınıfları Bulma

  1. mvdlbs
    7
    720
    9.8.2018 23:23:00

    Bir interface i implemen eden tüm sınıfları listelemem lazım , örneğin aşağıdaki B ve C sınıfını

    public interface A
    {
    }
    
    public class B : A
    {
    }
    
    public class C : A
    {
    }
    
    c# .net 2 ay önce 120 Görüntüleme
    • Khons Soruyu tam anlayamadım ( o yüzden yorum yazdım ) ama bir sınıfın bir arayüzü uygulayıp uygulamadığını şöyle anlayabilirsin. https://dotnetfiddle.net/SL53IO

    • mvdlbs şunun kontrolünü yapmışsın ya hani B sınıfı A arayüzünü içerir. diye , ben işte tüm A arayüzünü içeren sınıfları listelemem lazım

    • Yorum Ekleyin

( 1 ) Cevap

  1. Khons
    8
    1013
    10.8.2018 15:41:00

    Şöyle ulaşabilirsin. https://dotnetfiddle.net/NnV7tD

    using System;
    using System.Reflection;
    using System.Linq;
    
    public class Program
    {
        public static void Main()
        {
            var types = Assembly.GetExecutingAssembly().GetTypes();
            foreach (var type in types)
            {
                if (type.GetInterfaces().Contains(typeof(A)))
                {
                    Console.WriteLine(string.Format("{0} sınıfı A arayüzünü içerir.", type.Name));
                }
            }
        }
    }
    
    public interface A
    {
    }
    
    public class B : A
    {
    }
    
    public class C : A
    {
    }
    

Cevabınız