4 способа получения QualifiedName для типа
От: Plutonia Experiment Беларусь http://blogs.rsdn.org/ikemefula
Дата: 03.05.04 15:18
Оценка: 29 (3)
static void Main(string[] args)
{
      Type t = typeof(C);
      Utils.PerfCounter p = new Utils.PerfCounter();
      
      string s = "";
      p.Start();
      for(int i=0; i<100000; i++)
      {
        s = t.FullName + ", " + t.Assembly.GetName().Name;
      }
      Console.WriteLine(p.Finish());
      Console.WriteLine(s);

      p.Start();
      for(int i=0; i<100000; i++)
      {
        s = Assembly.CreateQualifiedName(t.Assembly.GetName().Name, t.FullName);
      }
      Console.WriteLine(p.Finish());
      Console.WriteLine(s);
           
      p.Start();
      for(int i=0; i<100000; i++)
      {
        s = t.AssemblyQualifiedName;
        int indx = s.IndexOf(',');
        int indx2 = s.IndexOf(',', indx+1);

        s = s.Remove(indx2, s.Length-indx2);
      }
      Console.WriteLine(p.Finish());
      Console.WriteLine(s);

      p.Start();
      for(int i=0; i<100000; i++)
      {
        s = t.Assembly.FullName;
        int indx = s.IndexOf(',');

        s = s.Remove(indx, s.Length-indx);
        s = t.FullName + ", " + s;
      }
      Console.WriteLine(p.Finish());
      Console.WriteLine(s);
}


Вот перформанс каждого из них

4,361021
ConsoleApplication4.C, ConsoleApplication4
4,365712
ConsoleApplication4.C, ConsoleApplication4
0,5811521
ConsoleApplication4.C, ConsoleApplication4
0,08064517
ConsoleApplication4.C, ConsoleApplication4
Re: 4 способа получения QualifiedName для типа
От: V.Petrovski Беларусь  
Дата: 04.05.04 06:18
Оценка:
Извините за не скромный вопрос

ConsoleApplication4.C, ConsoleApplication4, Version=1.0.0.0, Culture=neutral, PublicKeyToken=aaaaaaaaaaaaaaaa


А остальная часть где?
... << RSDN@Home 1.1.3 stable Ночные Снайперы — Столица>>
Re[2]: 4 способа получения QualifiedName для типа
От: tavwizard Беларусь  
Дата: 04.05.04 07:03
Оценка:
Здравствуйте, V.Petrovski, Вы писали:

VP>Извините за не скромный вопрос


VP>

VP>ConsoleApplication4.C, ConsoleApplication4, Version=1.0.0.0, Culture=neutral, PublicKeyToken=aaaaaaaaaaaaaaaa


VP>А остальная часть где?


Это способы для получения QualifiedName без версии ассембли и т.д.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.