2012-07-02 3 views
3

До обновления asp.net 4 RC я использовал WebApi для вывода XML. Моя модель имела атрибуты XmlSerialization [XmlElement(ElementName = "the name")], так что я мог использовать более дружественные имена.ASP.NET WebAPI XML Serialization после обновления RC

например.

[XmlElement(ElementName = "Branch")] 
public string site_nm { get; set; } 

После обновления .net 4 RC, выводимый XML игнорирует это.

Я знаю, что некоторые вещи изменились в WebApi, как заставить метод возвращать значения на основе протоколов OData при возврате IQueryable<T>, теперь вам нужно добавить [Queryable] к вашим методам.

Есть ли что-то, что мне нужно добавить, чтобы сделать сериализацию? Я прочитал заметки об изменениях, но ничего не вижу.

ответ

5

Вы должны поручить форматировщик использовать XmlSerializer:

GlobalConfiguration.Configuration.Formatters.XmlFormatter.UseXmlSerializer = true; 

по умолчанию в настоящее время является DataContractSerializer.

+0

Если по умолчанию используется DataContractSerializer, как я могу использовать это вместо этого? [DataMember (Name = "the name)]? –

+0

Ahh, я получил его. Спасибо. Просто сейчас [DataContact (Name =" ")] и [DataMember (Name =" ")]. –

Смежные вопросы