Здравствуйте, _FRED_, Вы писали:
_FR>Здравствуйте, <Аноним>, Вы писали:
А>>Есть сеpеализyемый класс A, сеpеализyется и де- на ypа.
А>>Я желаю pасшиpить его фyнкциональность интеpфейсом, но не хочy пpавить его
А>>самого. Делаю так
_FR>[c#]
_FR>А>>public class B: A, IInterface
А>>{
А>>//pеализация методов интеpфейса
А>>}
_FR>
_FR>[/c#]
А>>Ожидаю что B бyдет десеpеализоваться так же как A, но не тyт-то было.
А>>Полyчаю ошибкy в фоpмате XML файла. В чём косяк?
_FR>Открытый конструктор без параметров в классе B остался? Открытые свойства новые (по-сравнению с A) появились? Покажи пример вызова XmlSerializer?
Нет класс B реально выглядит как я написал, ничего кроме трёх методов интерфейса.
Класс A это куча вложенных классов полученная с помощью xsd.exe.
ptnet.pnml net1 = new ptnet.pnml();
XmlSerializer formatter = new XmlSerializer(net1.GetType());
XmlTextReader tr = new XmlTextReader( new StringReader(PNMLFile.DocumentElement.OwnerDocument.OuterXml));
net1 = (ptnet.pnml)formatter.Deserialize(tr);
где ptnet.pnml это класс A, я расчитывал что при замене на B всё также заработает, но...