Копия объекта
От: Аноним  
Дата: 11.06.08 14:40
Оценка:
Привет всем,

Задачка следующая:
У меня одина COM+ библиотека, портированная при помощи студии. Объект одного из классов из этой InterOp библиотеки нужно клонировать. Можно конечно унаследоваться от этого класса и реализовать метод c MemberwiseClone (чего бы вполне хватило). Но не я сам создаю эти объекты, а получаю их из друго объекта. Для ясности:

MyInteropAClass myInteropAObject = new MyInteropAClass();
MyInteropBClass myInteropBObject = myInteropAObject.GetBObject();


Вот копию бы этого myInteropBObject получить. Как?
Re: Копия объекта
От: acronim  
Дата: 15.06.08 22:24
Оценка:
А>
А>MyInteropAClass myInteropAObject = new MyInteropAClass();
А>MyInteropBClass myInteropBObject = myInteropAObject.GetBObject();
А>


А>Вот копию бы этого myInteropBObject получить. Как?


У MyInteropBClass есть пустой конструктор?
1. Reflection
2. Serialize\Desirialize
Все должно быть просто
Re: Копия объекта
От: Ovl Россия  
Дата: 16.06.08 16:56
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Привет всем,


А>Задачка следующая:

А>У меня одина COM+ библиотека, портированная при помощи студии. Объект одного из классов из этой InterOp библиотеки нужно клонировать. Можно конечно унаследоваться от этого класса и реализовать метод c MemberwiseClone (чего бы вполне хватило). Но не я сам создаю эти объекты, а получаю их из друго объекта. Для ясности:

А>
А>MyInteropAClass myInteropAObject = new MyInteropAClass();
А>MyInteropBClass myInteropBObject = myInteropAObject.GetBObject();
А>


А>Вот копию бы этого myInteropBObject получить. Как?


можно узнать с какой целью? com система как раз и был задумана как средство изоляции контрактов от классов.
Read or Die!
Как правильно задавать вопросы
Как правильно оформить свой вопрос
Автор: anvaka
Дата: 15.05.06
Re[2]: Копия объекта
От: Аноним  
Дата: 17.06.08 07:33
Оценка:
Здравствуйте, Ovl, Вы писали:

Ovl>Здравствуйте, Аноним, Вы писали:


А>>Привет всем,


А>>Задачка следующая:

А>>У меня одина COM+ библиотека, портированная при помощи студии. Объект одного из классов из этой InterOp библиотеки нужно клонировать. Можно конечно унаследоваться от этого класса и реализовать метод c MemberwiseClone (чего бы вполне хватило). Но не я сам создаю эти объекты, а получаю их из друго объекта. Для ясности:

А>>
А>>MyInteropAClass myInteropAObject = new MyInteropAClass();
А>>MyInteropBClass myInteropBObject = myInteropAObject.GetBObject();
А>>


А>>Вот копию бы этого myInteropBObject получить. Как?


Ovl>можно узнать с какой целью? com система как раз и был задумана как средство изоляции контрактов от классов.


цель самая банальная и обыкновенная. Есть объект класса, который должен быт отредактирован с возможностью возврата изменений. Для этого (по-моему) проще всего взять копию этого объекта, разрешить его править. Если позже пользователь согласился с изменениями, заменять оригинальный на тот что был отредактирован, если нет, просто выкидывать
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.