2

我正在使用 asp.net mvc4 web api 创建一个 REST 服务。我的服务返回 xml 作为输出。我想更改 xml 响应的一些方面,包括: - xml 根节点 - 添加命名空间 - 删除 xml 中的 xsi:nil 我在我的模型中使用数据上下文文件(Linq to sql dbml 文件)而不是用户定义的类. 我从这个链接http://www.asp.net/web-api/overview/formats-and-model-binding/json-and-xml-serialization读到 我可以使用 DataContract 这样做但不知道在我的情况下如何实现。我不想使用消息处理程序,因为这需要将整个 xml 加载到一个字符串中,并且可能会影响返回的 xml 输出可能很大的性能

请帮忙...

4

1 回答 1

1

这个例子应该会有所帮助:

[DataContract(Name = "Customer", Namespace = "http://www.contoso.com")]
class Person : IExtensibleDataObject
{
    // To implement the IExtensibleDataObject interface, you must also 
    // implement the ExtensionData property. 
    private ExtensionDataObject extensionDataObjectValue;
    public ExtensionDataObject ExtensionData
    {
        get
        {
            return extensionDataObjectValue;
        }
        set
        {
            extensionDataObjectValue = value;
        }
    }

    [DataMember(Name = "CustName")]
    internal string Name;

    [DataMember(Name = "CustID")]
    internal int ID;

    public Person(string newName, int newID)
    {
        Name = newName;
        ID = newID;
    }

}

您可以在MSDN上阅读更多内容

于 2012-08-23T14:28:23.217 回答