Как правильно использовать Type.GetType?
От: Аноним  
Дата: 01.03.06 12:12
Оценка:
Пишу такой код:
Type myType1 = Type.GetType("System.Int32");
Type t = Type.GetType("System.Windows.Forms.Button")

После его выполнения в переменную myType1 записывается соответственный тип, а в переменную t — нет (остается null).
Почему? Не могу понять, что я тут не так написал.
Спасибо всем заранеее.
Re: Как правильно использовать Type.GetType?
От: migel  
Дата: 01.03.06 12:29
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Пишу такой код:

А>
А>Type myType1 = Type.GetType("System.Int32");
А>Type t = Type.GetType("System.Windows.Forms.Button")
А>

А>После его выполнения в переменную myType1 записывается соответственный тип, а в переменную t — нет (остается null).

Type ревниово относиться к неполным именам классов — понимает только системные...
Для всех остальных лучше использовать AssemblyQualified имя.
... << RSDN@Home 1.2.0 alpha rev. 644>>
Re[2]: Как правильно использовать Type.GetType?
От: Аноним  
Дата: 01.03.06 12:33
Оценка:
Здравствуйте, migel, Вы писали:
M>Type ревниово относиться к неполным именам классов — понимает только системные...
M>Для всех остальных лучше использовать AssemblyQualified имя.

Спасибо! А что такое AssemblyQualified имя? Или как его использовать — например, для указанного примера?
Re: Как правильно использовать Type.GetType?
От: SiAVoL Россия  
Дата: 01.03.06 12:34
Оценка:
Здравствуйте, <Аноним>, Вы писали:

читайте MSDN по Type.GetType, там это хорошо описано с примерами. В кратце, если используете простое имя типа, то тип изется в вызывающей сборке, а потом в mscorlib.dll. Поэтому надо указывать сборку в которой надо искать тип
А>
А>Type t = Type.GetType("System.Windows.Forms.Button, System.Windows.Forms")
А>
... << RSDN@Home 1.2.0 alpha rev. 569>>
Как правильно использовать Type.GetType?
От: Аноним  
Дата: 01.03.06 12:38
Оценка:
Type t = Type.GetType("System.Windows.Forms.Button, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken = b77a5c561934e089");


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[3]: Как правильно использовать Type.GetType?
От: migel  
Дата: 01.03.06 12:44
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Здравствуйте, migel, Вы писали:

M>>Type ревниово относиться к неполным именам классов — понимает только системные...
M>>Для всех остальных лучше использовать AssemblyQualified имя.

А>Спасибо! А что такое AssemblyQualified имя? Или как его использовать — например, для указанного примера?

Это поолное имя типа, включая Полное имя сборки в которой он определен
вот так

AQ_Name = FullName, AssemblyFullName

то есть
Type t = Type.GetType("System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral");
... << RSDN@Home 1.2.0 alpha rev. 644>>
Как правильно использовать Type.GetType?
От: Аноним  
Дата: 01.03.06 12:52
Оценка:
Еси тип заранее известен то лутше так
Type t = typeof(System.Int32);


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Re[2]: Как правильно использовать Type.GetType?
От: V.Petrovski Беларусь  
Дата: 01.03.06 13:58
Оценка:
Здравствуйте, SiAVoL, Вы писали:

SAV>В кратце, если используете простое имя типа, то тип изется в вызывающей сборке, а потом в mscorlib.dll.


А не во всех ли загруженных сборках в текущий домен происходит поиск?
<< RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Как правильно использовать Type.GetType?
От: SiAVoL Россия  
Дата: 01.03.06 14:23
Оценка:
Здравствуйте, V.Petrovski, Вы писали:

VP>А не во всех ли загруженных сборках в текущий домен происходит поиск?

щас проверил специально
Type.GetType Method (String)

If typeName includes only the name of the Type, this method searches in the calling object's assembly, then in the mscorlib.dll assembly.

... << RSDN@Home 1.2.0 alpha rev. 569>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.