Привет всем,
Задачка следующая:
У меня одина COM+ библиотека, портированная при помощи студии. Объект одного из классов из этой InterOp библиотеки нужно клонировать. Можно конечно унаследоваться от этого класса и реализовать метод c MemberwiseClone (чего бы вполне хватило). Но не я сам создаю эти объекты, а получаю их из друго объекта. Для ясности:
MyInteropAClass myInteropAObject = new MyInteropAClass();
MyInteropBClass myInteropBObject = myInteropAObject.GetBObject();
Вот копию бы этого myInteropBObject получить. Как?
А>А>MyInteropAClass myInteropAObject = new MyInteropAClass();
А>MyInteropBClass myInteropBObject = myInteropAObject.GetBObject();
А>
А>Вот копию бы этого myInteropBObject получить. Как?
У MyInteropBClass есть пустой конструктор?
1. Reflection
2. Serialize\Desirialize
Здравствуйте, Аноним, Вы писали:
А>Привет всем,
А>Задачка следующая:
А>У меня одина COM+ библиотека, портированная при помощи студии. Объект одного из классов из этой InterOp библиотеки нужно клонировать. Можно конечно унаследоваться от этого класса и реализовать метод c MemberwiseClone (чего бы вполне хватило). Но не я сам создаю эти объекты, а получаю их из друго объекта. Для ясности:
А>А>MyInteropAClass myInteropAObject = new MyInteropAClass();
А>MyInteropBClass myInteropBObject = myInteropAObject.GetBObject();
А>
А>Вот копию бы этого myInteropBObject получить. Как?
можно узнать с какой целью? com система как раз и был задумана как средство изоляции контрактов от классов.
Здравствуйте, Ovl, Вы писали:
Ovl>Здравствуйте, Аноним, Вы писали:
А>>Привет всем,
А>>Задачка следующая:
А>>У меня одина COM+ библиотека, портированная при помощи студии. Объект одного из классов из этой InterOp библиотеки нужно клонировать. Можно конечно унаследоваться от этого класса и реализовать метод c MemberwiseClone (чего бы вполне хватило). Но не я сам создаю эти объекты, а получаю их из друго объекта. Для ясности:
А>>А>>MyInteropAClass myInteropAObject = new MyInteropAClass();
А>>MyInteropBClass myInteropBObject = myInteropAObject.GetBObject();
А>>
А>>Вот копию бы этого myInteropBObject получить. Как?
Ovl>можно узнать с какой целью? com система как раз и был задумана как средство изоляции контрактов от классов.
цель самая банальная и обыкновенная. Есть объект класса, который должен быт отредактирован с возможностью возврата изменений. Для этого (по-моему) проще всего взять копию этого объекта, разрешить его править. Если позже пользователь согласился с изменениями, заменять оригинальный на тот что был отредактирован, если нет, просто выкидывать