|
|
|
метод сравнения объектов
|
|||
|---|---|---|---|
|
#18+
Требуется сравнить два объекта одного класса. Класс заранее неизвестен. Есть ли какой-нибудь метод сравнения объектов? Или придется использовать ClassDefinition? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 12:36:17 |
|
||
|
метод сравнения объектов
|
|||
|---|---|---|---|
|
#18+
Ivan.Kokov , может речь про экземпляры одного класса? Теоретически можно и так Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 13:29:19 |
|
||
|
метод сравнения объектов
|
|||
|---|---|---|---|
|
#18+
krvsa Ivan.Kokov , может речь про экземпляры одного класса? Теоретически можно и так Код: plaintext На простых классах, пожалуй, прокатит. А как быть с relationship'ами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 13:39:34 |
|
||
|
метод сравнения объектов
|
|||
|---|---|---|---|
|
#18+
Ivan.KokovА как быть с relationship'ами? Так там равенство и не предполагается... Значит как вариан можно: - читать информацию о свойствах класса - бать экземпляры - крутить в цикле по всем "нужным" свойствам - сравнивать значения из листбилда Примерно такой алгоритм... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 15:47:43 |
|
||
|
метод сравнения объектов
|
|||
|---|---|---|---|
|
#18+
Стандартного метода нет - и в терминах СУБД как то не ясно зачем он нужен. Так что придется либо ClassDefinition крутить - либо в ввести базовый абстрактный класс с методом-генератором двух своих экземпляров. Вот только задача сравнения всё равно мутная - вот вы релейшены упомянули.... А что делать если класс содержит ссылку на самого себя - для деревьев там или еще какой иерархии ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2009, 21:33:11 |
|
||
|
метод сравнения объектов
|
|||
|---|---|---|---|
|
#18+
Ivan.Kokov, мы как-то так делаем для записи изменений... правда сравнивается объект в памяти с самим собой в базе... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2009, 02:40:22 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=36212500&tid=1558384]: |
0ms |
get settings: |
12ms |
get forum list: |
23ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
50ms |
get topic data: |
16ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
2ms |
| others: | 340ms |
| total: | 527ms |

| 0 / 0 |
