[XmlType (AnonymousType = true)] - PullRequest
       16

[XmlType (AnonymousType = true)]

12 голосов
/ 01 апреля 2011

Здравствуйте, что означает эта строка во время сериализации?

[XmlType(AnonymousType = true)]
public class classname
{
}

xsd.exe генерирует это для всех классов. Я читаю документацию, но все еще не могу понять, как это повлияет на меня, если я удалю эту строку.

Спасибо

1 Ответ

9 голосов
/ 01 апреля 2011

Это позволяет компилятору узнать, называть или нет именованные элементы XSD или делать их анонимными

http://www.ibm.com/developerworks/library/xml-schema/

Элементы с атрибутами должны иметь сложный тип

Теперь попробуйте добавить валюту атрибута к цене простого элемента из листинга 7. Вы не можете. Элемент простого типа не может иметь атрибут. Если вы хотите добавить атрибут, вы должны определить цену как сложный тип. В примере, приведенном в листинге 8, мы определили так называемый анонимный тип, в котором сложному типу не дается явное имя. Другими словами, атрибут name элемента complexType не определен.

http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmltypeattribute.anonymoustype.aspx

...