![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| href |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 25.10.2006 Где: Moscow Репутация: нет Всего: нет |
Подскажите, пожалуйста, как быть? Объявляю метод:
вызываю его так:
или так:
VisualStudio программу не компиляет, а подсвечивает From в sms.From.Address.ToString(), пишет 'T' does not contain a definition for 'From' and no extension method 'From' accepting a first argument of type 'T' could be found (are you missing a using directive or an assembly reference?)" Это сообщение отредактировал(а) href - 26.5.2009, 15:09 |
||||||
|
|||||||
| Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 8 Всего: 67 |
href, не удивительно...
Вы же уже спрашивали в соседнем топике как лучше сделать - сделайте как Вам посоветовали там. -------------------- СУВ, Partizan. |
|||
|
||||
| href |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 25.10.2006 Где: Moscow Репутация: нет Всего: нет |
почему? UPD. Вернее, как можно заставить программу работать в такой ситуации (абстрагируясь от того, что можно решить задачу другим, менее универсальным способом)? Это сообщение отредактировал(а) href - 26.5.2009, 16:18 |
|||
|
||||
| Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 8 Всего: 67 |
href,
потому, что T в данном случае - это вообще любой тип, а не один из двух... потому, что дженерики в .NET являются динамическими типами и специфицируются в рантайме(в отличие от шаблонов C++, которые специфицируются в compile-time) -------------------- СУВ, Partizan. |
|||
|
||||
| Alekz |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 86 Регистрация: 5.2.2008 Где: Запорожье, Украин а Репутация: 1 Всего: 2 |
||||
|
||||
| Wanderer2019 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 937 Регистрация: 3.12.2004 Где: Санкт-Петербург/П рага Репутация: 2 Всего: 17 |
В данном случае пример не является "более универсальным способом". Исходя из того, что в функции ParseMessage вы обращаетесь к уникальным полям класса (например From), можно сделать вывод, что ничего кроме объекта типа SMS в функцию передать нельзя. Соответственно это ни есть джинерик. Именно об этом и ругается компилятор. Это сообщение отредактировал(а) Wanderer2019 - 27.5.2009, 17:50 |
|||
|
||||
| Лен |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 20.1.2009 Репутация: нет Всего: нет |
Сделайте generic более узким.
дополните строкой
или (намного лучше)
где SomeClass - класс-предок Microsoft.WindowsMobile.PocketOutlook.SmsMessage и который имеет свойство From. |
||||||
|
|||||||
| PashaPash |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1233 Регистрация: 3.1.2008 Репутация: 9 Всего: 49 |
Лен, у топикастера 2 разных класса SMS, с одинаковыми методами, но без общего предка или интерфейса. и он всячески пытается написать для них общий код.
|
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 6 Всего: 118 |
он хочет чета типа того?
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| PashaPash |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1233 Регистрация: 3.1.2008 Репутация: 9 Всего: 49 |
jonie, наверное да, но адаптер уже упоминали - наверное, не подошел. Еще варианты?
|
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | .NET для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |