Voglio la mia uscita a guardare come questoUsa XmlSerializer per aggiungere uno spazio dei nomi senza prefisso
<OrderContainer xmlns="http://blabla/api/products" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
Così ho aggiunto il seguente al mio XmlSerializer
XmlSerializer x = new XmlSerializer(typeof(OrderContainer));
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
ns.Add("", "http://blabla/api/products");
ns.Add("i", "http://www.w3.org/2001/XMLSchema-instance");
// do stuff..
x.Serialize(stream, orderContainer, ns);
Ma ora ho
<OrderContainer xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
Quindi, come posso modificare lo spazio dei nomi predefinito?
La mia definizione di un oggetto è come:
[System.Runtime.Serialization.DataContractAttribute(Name="OrderContainer", Namespace="http://blabla/api/products")]
[System.SerializableAttribute()]
public partial class OrderContainer
Sì, erano solo alcune entità generate da WCF; quindi sono stati decorati con 'DataContractAttribute' –