ASP.NET-如何更改JSON序列化的方式? - javascript

我正在使用ASP.NET通过以下查询返回Json文件:

public ActionResult getTransactionTotals(int itemID)
    {
        DBEntities db = new DBEntities();

        var query = from trans in db.Transactions
                    // Linq query removed for brevity
                        into selection
                        select new TransactionAmount
                        {
                            name = selection.Key,
                            amount = selection.Select(t => t.TransactionId).Distinct().Count()
                        };

        return Json(query.ToList(),JsonRequestBehavior.AllowGet);
    }

这是创建的对象:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace OhYeah
{
public class TransactionAmount
{
    public String name { get; set; }
    public int amount { get; set; }
}
}

它以以下形式返回JSON:

[{"name":"billy", "amount":5}, {"name":"timmy", "amount":18}]

现在,我想编辑Linq查询或Json序列化器以输出如下Json:

[{"billy":5, "timmy":18}]

请注意,第二个Json是单个项目,其中“名称”键现在是第一个Json中“名称”的值。 “名称”和“金额”键将被丢弃。 “名称”值始终是唯一的,不能有两个比利或蒂米,因此不必考虑。

我该怎么做呢?

参考方案

尝试这个

序列化后将查询放入字典中

在JavaScript中运行方法C# - javascript

打扰一下,我有这种C#asp方法。受保护的无效btnSave_Click(对象发送者,EventArgs e)有谁知道我该如何发送脚本给您?可以办到?。 javascript大神给出的解决方案 是的,那可以做到。为此,您在.aspx.cs页中创建了函数,然后单击保存按钮上的代码将其复制到函数中,然后执行以下步骤。//Call cs method from J…

单击选项卡链接时,请专注于每个引导选项卡中的First asp:textbox - javascript

我是开发的新手,并开始开发简单的asp.net应用程序。我正在使用每个都有一些asp标签和文本框的bootstrap选项卡。单击该选项卡时,我要重点关注选项卡内容中的第一个文本框。我搜索了各种答案,但都是针对输入字段的(exp:输入type =“ text”)。找不到适用于ASP文本框的任何内容。任何帮助将不胜感激。谢谢 javascript参考方案 ASP…

通过按钮(asp.net)在textbox.value(JavaScript)中输入字符串 - c#

我正在使用Microsoft Visual Web Developer2010。我有一个使用以下代码的文本框(txtBoxInput):<input type="text" id="txtBoxInput"/>我还有一个使用代码的aspn.net按钮(btnTest):<asp:Button ID=&…

asp.net中的目录浏览器 - c#

我正在使用http://www.codeproject.com/KB/aspnet/DirectoryBrowsing.aspx中使用的目录浏览器。当我在localhost上运行应用程序时,UNC路径工作正常。当我在IIS中部署应用程序时,UNC(共享驱动器/文件夹)无法正常工作。它找不到共享驱动器和文件夹?有任何想法吗? 参考方案 首先想到的是权限-检查用…

如何确保此JavaScript代码可以在C#ASP.NET中运行 - javascript

再次需要帮助有没有办法在C#ASP.NET编码而不是HTML / ASPX文件中运行此javascript?<script type="text/javascript"> // document.getElementById("label1"). var input = document.getElemen…