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