CType

Язык C#: программирование на C#, портирование кода C# на VB и VB на C#.

Модератор: Ramzes

mdx
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 169
Зарегистрирован: 06.01.2006 (Пт) 18:13
Откуда: I'm from Russia!

CType

Сообщение mdx » 04.10.2006 (Ср) 15:36

В VB можно написать так:
Код: Выделить всё
CType(Object, Type).Method()

как должна выглядеть аналогичная строчка на C#?
This posting is provided "AS IS" with no warranties, and confers no rights.

Изображение

Thomas
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 246
Зарегистрирован: 12.11.2005 (Сб) 0:17
Откуда: "Сказочное королевство"

Сообщение Thomas » 04.10.2006 (Ср) 16:23

mdx
Привет.
Посмотри Convert

Convert.GetTypeCode(object Value);

Returns the System.TypeCode for the specified object.

Вообще там целый набор в Convert. Набираешь это ключевое слово ставиш точку и выпадает длиннющий список всего во что можно конвертировать.

По моему это то что тебе нужно.

mdx
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 169
Зарегистрирован: 06.01.2006 (Пт) 18:13
Откуда: I'm from Russia!

Сообщение mdx » 04.10.2006 (Ср) 16:38

Не то. Не совсем.

Но, вобщем, проблема решена. В Convert нашел ChangeType(object value, System.Type conversionType)
This posting is provided "AS IS" with no warranties, and confers no rights.

Изображение

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Re: CType

Сообщение tyomitch » 04.10.2006 (Ср) 17:54

mdx писал(а):В VB можно написать так:
Код: Выделить всё
CType(Object, Type).Method()

как должна выглядеть аналогичная строчка на C#?

Вообще-то, есть способ проще: ((Type)Object).Method();
Изображение

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 04.10.2006 (Ср) 23:19

А есть еще такой, например:

myObjectType myObj= someObj as myObjectType;
myObj.MyMethod();

as хорош тем, что не бросает исключения, если нельзя выполнить приведение, а возвращает null, то есть, строка с as выше аналогична:

myObjectType obj = myObj is type ? (myObjectType)myObj : (myObjectType)null;
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali


Вернуться в C#

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21

    TopList