![]() |
Модераторы: diadiavova, gambit |
![]() ![]() ![]() |
|
Pankon |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: нет Всего: 5 |
Имею класс
и процедуру
Как реализовать что-то подобное, надеюсь, идея понятна. ![]() |
||||
|
|||||
arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 7 Всего: 61 |
Pankon,
Надеюсь, идея понятна? ![]() Это сообщение отредактировал(а) arilou - 16.3.2006, 17:26 |
|||
|
||||
Pankon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: нет Всего: 5 |
Нет не понятна.
![]() Может я чего непонял. ![]() но вопрос был про динамические типы внутри класса (Of MyType). Затруднение состоит в том, что хотелось бы инициализировать класс, заранее не зная, какой "внутренний тип" будет у этого обьекта (т.е. динамическиый тип, (Of MyType)). VB же позволяет при инициализации обьекта ТОЛьКО (Dim objMClass1 As MClass(Of Integer) ) определенные типы, что, как понимаете, динамическим не назовешь. ПС. Плохо изьясняю ![]() Это сообщение отредактировал(а) Pankon - 16.3.2006, 18:37 |
|||
|
||||
Exception |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 18 Всего: 186 |
Ни фига не понял
![]() Добавлено @ 18:24 Может, тебе такое надо:
|
|||
|
||||
Pankon |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: нет Всего: 5 |
Пытаюсь обьяснить. ![]() Теперь сделай обьект(или обьяви переменную) из своего класса: например так: Dim objMClass1 As MyClass(Of Integer) да, работает, но, однако Integer!!!! А как вместо Integer подсунуть, например, переменную, где хранится другой тип ![]() ПС. А где aбшибки тa блин? ![]() Это сообщение отредактировал(а) Pankon - 16.3.2006, 18:35 |
||||
|
|||||
arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 7 Всего: 61 |
Pankon, теперь понял. К сожалению, в твоем варианте это не пройдет. Ты хочешь в рантайме создавать generic. А это невозможно, т.к. type-safety реализуется на этапе компиляции. Да и зачем тебе ?
|
|||
|
||||
Pankon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: нет Всего: 5 |
Вообще все началось с того, что мне нужен обьект, который кушает запись из базы данных и сохраняет значения полей. Запихнул я ето все collection значит, а вот с типами-то и проблемки.
Очень не хочется обьяснять коллегам, что после вызова моего обьекта, нужно еще CType для "полей" делать. А делать 50 свойств в обьекте с зананными типами, мне лень. ![]() Вот и ищу, понимаешь, обходные пути. ![]() Это сообщение отредактировал(а) Pankon - 16.3.2006, 18:58 |
|||
|
||||
Exception |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 18 Всего: 186 |
Какие еще обходные пути
![]() ![]() |
|||
|
||||
Pankon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: нет Всего: 5 |
Про "типизированный датасет" поподробней, пожалуйста
![]() |
|||
|
||||
Exception |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 18 Всего: 186 |
Тут лучше чем в MSDN не скажешь. Это аналоги датасетов, но с сильной типизацией. Честно говоря, гадость, всё равно им на смену придёт DLinq, про который я сейчас пишу статью. Вкратце про него можно почитать в статье LINQ Project Overview, линк у меня в подписи.
|
|||
|
||||
Pankon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: нет Всего: 5 |
А что-же делать с полями, которые NULL ![]() |
|||
|
||||
Exception |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 18 Всего: 186 |
Использовать Nullable-типы. Как я уже говорил, читал мой обзор. Хотя DLinq появится только в .NET 3.0, preview-версия уже готова.
|
|||
|
||||
arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 7 Всего: 61 |
Типизированные датасеты поддерживают и такое...
Написать простенький кодогенератор. |
|||
|
||||
Exception |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 18 Всего: 186 |
Честно говоря, меня уже тошнит от типизированных датасетов
![]() |
|||
|
||||
Pankon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 739 Регистрация: 2.6.2005 Репутация: нет Всего: 5 |
Это как? |
|||
|
||||
![]() ![]() ![]() |
Правила форума VB .NET | |
|
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | VB .NET | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |