Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
05.06.2013, 15:17
|
|||
---|---|---|---|
|
|||
Присвоить объект базового класса объекту наследованного |
|||
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
Как лучше присвоить? Код: c# 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 15:23
|
|||
---|---|---|---|
Присвоить объект базового класса объекту наследованного |
|||
#18+
Charles Weyland, А зачем? Можно разве что написать метод для класса B Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
естественно это будет новый объект, не имеющий никакого отношения к исходному. Зачем такое нужно, сложно представить ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 15:45
|
|||
---|---|---|---|
|
|||
Присвоить объект базового класса объекту наследованного |
|||
#18+
Мой компонент имеет свойство типа DataTable Source{set;}, но хочется немного расширить его функционал. Поэтому внутри компонента я использую свой класс DataTableExt. Вот незадача: Код: c# 1. 2. 3. 4. 5. 6. 7.
не работает. А таким образом, как ты сказал, переписывать все поля - дофига работы... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 15:54
|
|||
---|---|---|---|
Присвоить объект базового класса объекту наследованного |
|||
#18+
Charles WeylandМой компонент имеет свойство типа DataTable Source{set;}, но хочется немного расширить его функционал. Поэтому внутри компонента я использую свой класс DataTableExt. Вот незадача: Код: c# 1. 2. 3. 4. 5. 6. 7.
не работает. А таким образом, как ты сказал, переписывать все поля - дофига работы... Че-то все равно не понятно. Если MyDataTableExt наследует DataTable, то Код: c# 1. 2. 3. 4. 5. 6. 7. 8.
Можно еще методы расширения написать для DataTable и не делать доп функциональности через наследование. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 15:59
|
|||
---|---|---|---|
Присвоить объект базового класса объекту наследованного |
|||
#18+
Charles WeylandDataTable Source { set { MyDataTableExt = value; } } [/src] . Так передавай в качестве value свой Ext, в чем проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 16:01
|
|||
---|---|---|---|
Присвоить объект базового класса объекту наследованного |
|||
#18+
PallarisCharles WeylandDataTable Source { set { MyDataTableExt = value; } } [/src] . Так передавай в качестве value свой Ext, в чем проблема? Так у него же приватное поле типа MyDataTableExt , а он хочет возвращать и присваивать ему DataTable. Запутался где-то человек. Или бывает идея фикс в голове и все - ступор, хочется только так сделать... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 16:06
|
|||
---|---|---|---|
Присвоить объект базового класса объекту наследованного |
|||
#18+
vindofsPallarisТак передавай в качестве value свой Ext, в чем проблема? Так у него же приватное поле типа MyDataTableExt , а он хочет возвращать и присваивать ему DataTable. Код: sql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 16:08
|
|||
---|---|---|---|
Присвоить объект базового класса объекту наследованного |
|||
#18+
Ну и передавать по-прежнему надо DataTableExt. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 16:11
|
|||
---|---|---|---|
|
|||
Присвоить объект базового класса объекту наследованного |
|||
#18+
Проблема в том, что в DataTable мне необходимы некоторые поля, события и пара других мелочей, которых там нет. Для этого создал DataTableExt: DataTable Извне мне поступает DataTable, и я её должен записать в DataTableExt (что будет со значениями полей, которые были добавлены в DataTableExt - для меня не принципиально, непонятно только откуда возьмутся эти значения). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 16:13
|
|||
---|---|---|---|
Присвоить объект базового класса объекту наследованного |
|||
#18+
Charles WeylandИзвне мне поступает DataTable Так пусть поступает DataTableExt. непонятно только откуда возьмутся эти значения) CLRу на этапе выполнения тем более непонятно. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 16:20
|
|||
---|---|---|---|
Присвоить объект базового класса объекту наследованного |
|||
#18+
PallarisCharles Weylandнепонятно только откуда возьмутся эти значения) CLRу на этапе выполнения тем более непонятно. Charles Weyland, именно по этой причине C# не разрешает преобразование от базового класса к дочернему. Корень проблемы в неправильно спроектированной иерархии классов. Нужно искать другое решение. Насколько я понимаю это продолжение темы с наследованием 14394602 и я там ответил что тебе нужно расширять элемент управления отображающий данные, а не источник данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
05.06.2013, 16:28
|
|||
---|---|---|---|
Присвоить объект базового класса объекту наследованного |
|||
#18+
bazileКорень проблемы в неправильно спроектированной иерархии классов. Нужно искать другое решение. . +1 Во вторых, мне не понятно, почему, даже отнаследовав несчастный DataTable, нельзя сделать скажем: Код: sql 1. 2. 3.
религия не позволяет? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=20&mobile=1&tid=1404561]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
62ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 163ms |
0 / 0 |