Tôi đã được yêu cầu cung cấp các tài liệu XML sau đây từ một thiết bị đầu cuối http, chính xác thích: -Di xmlns: i và xmlns từ WebAPI
<?xml version="1.0" encoding="utf-8"?>
<XMLFile xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SalesOrders>
...
</SalesOrders>
Tuy nhiên Web API spits ra
<?xml version="1.0" encoding="utf-8"?>
<XMLFile xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.datacontract.org/2004/07/White.Label.Ordering.Infrastructure.Data.Queries.Export">
<SalesOrders>
...
</SalesOrders>
tôi có google xung quanh và thử các bản sửa lỗi khác nhau nhưng không có kết quả, mô hình của tôi trông giống như
[DataContract]
public class XMLFile
{
[DataMember]
public List<SalesOrder> SalesOrders { get; set; }
}
[DataContract]
public class SalesOrder
{
[DataMember(Order = 1)]
public string OrderNumber { get; set; }
}
và tôi thiết lập lools như này
public static void Register(HttpConfiguration config)
{
config.Formatters.XmlFormatter.WriterSettings.OmitXmlDeclaration = false;
...
}
Làm thế nào tôi có thể ngưng xmlns:i
và xmlns
và thay thế bằng xmlns:xsd
và xmlns:xsi
?
Tôi biết đây là một câu hỏi không tốt vì nó không quan trọng nhưng khách hàng tiêu thụ của tôi đang bị chặn.
có thể trùng lặp của http://stackoverflow.com/questions/12590801/remove-namespace-in-xml-from-asp-net-web-api ? –
Không thấy và đã thử điều đó, muốn nó là – Rippo