Должен ли какой-либо доменный объект не быть сериализуемым? - PullRequest
3 голосов
/ 04 декабря 2008

Есть ли способ просто сообщить компилятору, что я хочу, чтобы мои объекты были сериализуемыми по умолчанию?

Ответы [ 2 ]

3 голосов
/ 05 декабря 2008

Практически каждый механизм сериализации захочет узнать, что ваши объекты подходят. Это может принимать форму:

  • [Serializable] / ISerializable (BinaryFormatter, SoapFormatter)
  • [Serializable] / IXmlSerializablepublic) (XmlSerializer)
  • [DataContract] / [MessageContract] (или большинство из вышеперечисленных) (DataContractSerializer и варианты)

AFAIK, нет способа избежать этого шага.

1 голос
/ 04 декабря 2008

Нет, вам нужно украсить объекты атрибутом Serializable. К вашему сведению, все объекты по умолчанию сериализуемы в формате Xml. Сериализатору Xml атрибут не требуется.

Я не уверен насчет DataContracts, но в последний раз я проверял, нужно ли их украшать.

...