ГЛАВНАЯ     АРХИВ     НАПИСАТЬ АДМИНУ     ПОДПИСАТЬСЯ НА RSS     ВОЙТИ      

Поиск

Категории

Облако тегов

  << Предыдущий пост       Следующий пост >>  
От: peerAt
13. сентября 2011 16:39
public static void Main(string[] args) 
{ 
   var t = typeof(IEnumerable); 

   var typesIEnum = AppDomain
    .CurrentDomain
    .GetAssemblies()
    .SelectMany(x => x.GetTypes())
    .Where(x => t.IsAssignableFrom(x)); 

  foreach (var types in typesIEnum) 
  {
    Console.WriteLine(types.FullName); 
  }
  Console.ReadLine(); 
}

Результаты при разных запусках могут быть не одинаковыми. Помните, что мы ссылаемся на GetExportedTypes(), которая возвращает типы видимые снаружи сборки. Таким образом вы могли добавить новые ссылки (новые сборки) к вашему проекту. В них могли быть классы реализующие IEnumerable. Или вы могли бы поменять модификаторы доступа к пользовательским типам. Соответственно вы можете получить другие результаты.





Это перевод. Оригинал здесь.

Похожие записи


Вопросы на собеседовании C#, Net, ASP.NET, SQL
Продолжая тему вопросов на собеседовании. Нашел еще одну подборку. Оригинал лежит здесь . Перенес, чтобы не затерялось. Есть вполне вменяемые ответы (хотя, на некоторые вопросы ответил бы по-другому). Ответы находятся после списка вопросов, я их не менял. 23. Что такое шаблон проектирования Model/View/Controller? Как и зачем его применяют? 2...

Как получить список локальных процессов из приложения под .Net ?
В пространстве имен System.Diagnostics есть класс Process. Класс предоставляет доступ к локальным и удаленным процессам. Он позволяет запускать и останавливать процессы на локльной системе. Чтобы получить список с описаниями локальных процессов текущего компьютера, нужно вызвать статический метод GetProcesses() без параметров. Этот метод позволяет получить массив объе...

Как получить список общих слов из двух списков строк на LINQ ?
Здесь показан простой способ, как выловить общие строки из двух списков строк. Чтобы сделать это - используйте Enumerable.Intersect() метод C#class Program{ static void Main(string[] args) { List<string> lstOne = new List<string>() { "Jim", "Jack", "Kate", "Nope" }; List<string> lstTwo = new List<stri...

Добавить комментарий




biuquote
  • Комментарий
  • Предпросмотр
Loading


  Сохранить комментарий