删除
2023-11-21


我从标准 MVC 4 WebApi 项目得到以下响应;

<ArrayOfProduct xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Product>
<Id>1</Id>
<Name>Tomato Soup</Name>
<Category>Groceries</Category>
<Price>1</Price>
</Product>
</ArrayOfProduct>

我正在努力让它回归

<Products>
<Product>
<Id>1</Id>
<Name>Tomato Soup</Name>
<Category>Groceries</Category>
<Price>1</Price>
</Product>
</Products>

我发现了许多据称可以解决此问题的各种方法的参考资料,但没有一个有效;

更改默认序列化器不起作用。

创建客户序列化器Product不起作用。

创建一个新类List<Product>使用适当的 XmlRoot 和 XmlElement 属性公开不起作用。

Adding Datacontract属性不起作用。

Adding CollectionDatacontract属性不起作用。

这对其他人来说似乎都很简单,除了我!


尝试改用 XmlSerializer:

config.Formatters.XmlFormatter.UseXmlSerializer = true;

然后尝试定义一个派生自 Product 集合的类,并使用 [XmlRoot("Products")] 将元素名称从 'ArrayOfProduct' 重命名为 'Products'。

例如,不使用 List,而是使用 Products 类:

[XmlRoot("Products")]
public class Products : List<Product> { }

public class Product
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Category { get; set; }
    public double Price { get; set; }
}

ApiController的动作:

    public Products Get()
    {
        return new Products()
        {
            new Product() 
            {
                Id = 1,
                Name = "Tomato Soup", 
                Category = "Groceries",
                Price = 1
            }
        };
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

删除

  • .net 4.7 中的依赖注入?

    我对 DI 有哪些集成选项有点困惑 我发现它对于 net core 对于我的特定项目 来说非常简单 但我不需要构建跨平台应用程序 也看不到使用 core 的优势 但是 net 框架应用程序似乎仍然使用 Global asax 设置且没有 S
  • 具有自定义资源解析器的 Java XML 模式验证器无法解析元素

    Java XML 模式验证 ResourceResolver 问题 我正在尝试在 Web 应用程序中构建一个组件 该组件将根据一组模式验证不同的 XML 文档 我在 java 包 com example xml 中有验证器类 然后有一个用于
  • ASP.net MVC 项目无法在 IIS 上编译

    我以前只是将 ASP NET 网站上传到实时服务器 IIS 会自动编译它们 但是 当我对 asp net MVC 项目执行相同操作时 我只是收到错误 并且我需要在上传项目之前发布 构建 项目 注意1 我使用的是VWD 2008 Expres
  • 如何正确链接不同View之间

    我有一个master cshtml带有导航栏 我的第一个链接是另一个视图 ProjectManagement li a href Views ProjectManagement cshtml Project Management a li
  • 在c中使用xslt创建xml文件

    我有 5 个不同的键 值对 并且我知道我的 xml 文件应该是什么样子 我怎样才能用它创建一个 xml 文件 1 我总是可以做 printf 不太好 2 我可以使用 xslt 样式表 xsl 文件 来执行此操作吗 而且 我还希望能够进行我刚
  • 具有实体框架的 MVC 控制器的 T4 模板 - 主机的成员属性 (MvcTextTemplateHost)?

    有谁有我可以在 MVC 3 附带的 T4 模板 ControllerWithContext tt 中使用的 Host 对象成员的完整引用吗 我已经尝试了我能想到的所有谷歌搜索 但唯一相关的结果是这个页面 http blogs msdn co
  • 获取 Wi-Fi 配置文件信息

    我使用的是 Windows 8 1 它没有工具 带有 GUI 来管理 wifi 网络配置文件 所以我正在写一篇对我有帮助的文章 我做了一些谷歌搜索并发现托管 Wifi API https managedwifi codeplex com 并
  • 获取对 SOAP 的 XML 响应中的节点值

    我在 PowerShell 中发出 SOAP 请求 如下所示 uri https secure echosign com services EchoSignDocumentService20 WSDL sun Invoke WebReque
  • 在 IIS 6 虚拟目录中运行的 ASP.Net MVC 4 应用程序上目录列表被拒绝

    我试图让 ASP Net MVC 4 在 IIS6 上工作 但遇到了总是有趣的 目录列表被拒绝 错误 在您开始发布有关无扩展名网址以及我需要如何阅读 Haacked 博客文章之前 我已经 因此 这里的设置是 我创建了一个新网站并将其配置为使
  • PostAsync 方法的 HttpClient 错误

    使用 HttpClient 对第 3 方 API 进行 PostAsync 调用时 当我执行 client PostAsync 时 我正好看到此错误 知道是什么原因造成的吗 Code public class JobController A
  • 如何使用 ASP.NET MVC 在 Kendo UI Grid 中实现 N 级嵌套层次结构

    我正在尝试使用 ASP NET MVC 在 Kendo UI Grid 中实现 N 级嵌套层次结构 我可以实现特定数量的嵌套网格 但如何在 asp net MVC 中使用特定数据实现 N 级嵌套网格 Html Kendo Grid
  • 带有 HttpContext 的 ASP.NET MVC 单元测试控制器

    我正在尝试为我的一个控制器编写一个单元测试 以验证视图是否正确返回 但该控制器有一个访问 HttpContext Current Session 的基本控制器 每次我创建控制器的新实例时 都会调用 basecontroller 构造函数 并
  • 连接两个表的查询的 SQL Server“FOR XML”输出

    我是 SQL Server 中 FOR XML 功能的新手 我正在使用 SQL Server 2012 我有两个表 Word 和 Word Expansion 样本数据 表 字 WordOID Word 1 PIPE 2 WIRE 表 Wo
  • JAXB:如何注释类以使它们属于不同的命名空间?

    我希望有JAXB 注释的类将是 编组 解组到不同的 XML 命名空间 我需要的是这样的
  • 使用 XSLT 将 XML 转换为 SQL

    由于我无法控制的原因 我将获得一个 XML 文件和一个 XSLT 文件 该文件可以将 XML 文件转换为 SQL 代码或错误 现在让我们假设我们可以信任提供 XML 文件的人不会在 XML 中包含危险的构造 我什至不知道是否应该使用 Sim
  • (VS2017)运行所选代码生成器时出错:“序列不包含元素”

    我正在跑过微软的教程之一 https learn microsoft com en us aspnet core tutorials first mvc app 关于 MVC 开发 我在尝试创建各种元素时遇到错误 视图 控制器等 我收到的错
  • 如何从 Visual Studio 将视图导航到其控制器?

    问题是解决方案资源管理器上有 29 个项目 而且项目同时具有 ASP NET MVC 和 ASP NET Web 表单结构 在MVC部分中 Controller文件夹中有大约100个子文件夹 每个文件夹至少有3 4个控制器 视图完全位于不同
  • 扩展 XSD 文件

    我有一个带有枚举类型的 XSD 文件 我想创建一个 扩展 XSD 文件 它添加一些额外的枚举 但其他方面的行为就像主 XSD 一样 例如 主 XSD 文件包含以下内容
  • 覆盖 jQuery 验证 MVC4 中的默认设置

    要覆盖查询验证插件 请在文件 http docs jquery com Plugins Validation validate toptions 推荐的方式是 selector validate invalidHandler functio
  • 按钮 - 单击时更改背景颜色

    我的活动中有 8 个按钮 我正在寻找的是 按钮具有默认背景 单击按钮时 背景颜色应更改为其他颜色 这部分非常简单 但是 当我单击任何其他按钮时 第一个按钮的背景颜色应该变回默认颜色 我知道这将使用 选择器状态 来完成 但我不太确定如何实现它

随机推荐