【问题标题】:Indented JSON From Entity Framework来自实体框架的缩进 JSON
【发布时间】:2013-03-10 01:59:20
【问题描述】:

过去几天我一直在尝试阅读和测试各种方法,以获取实体框架内实体中的属性(列)并从中检索平均值,然后将其传递给 JSON。我已经接近了几次,但总是失败。最后,当我有 JSON 时,我想以缩进格式返回它,以便在 JQuery 可视化库中使用。

我的控制器在这里:

    public virtual JsonResult GetData()
    {
        var result = new FactSurveryResultsQueries().GetAverages();
        return new JsonResult { JsonRequestBehavior = JsonRequestBehavior.AllowGet, Data = result };
    }

这是我的视图模型:

namespace Provider.Models
{
    public class FactSurveyResultsViewModel //: BaseGraphViewModel
    {
        public FactSurveyResultsViewModel() { }
        //public List<KPIUserControl> customerSatisfactionChart = new List<KPIUserControl>();
        ////public List<string> customerSatisfactionChart = new List<string>();
        //public Dictionary<string, decimal> a { get; set; }
        public double? EaseRequestingHelp { get; set; }
        public double? TimeReachQualifiedTech { get; set; }
        public double? TimeProvideSolution { get; set; }
        public double? CompletenessOfSolution { get; set; }
        public double? TechAbilityProdKnowledge { get; set; }
        public double? HowWellKeptInformed { get; set; }
        public double? OverallServiceOpinion { get; set; }

    }
}

最后,这是我当前的迭代,仅检索一个属性并对其进行平均,尽管当前为空。

namespace Provider.Queries
{
    public class FactSurveryResultsQueries
    {
        public FactSurveyResultsViewModel GetAverages()
        {
            var result = new FactSurveyResultsViewModel();
            using (var db = new ATSNavigatorDBEntities())
            {
                var thing =
                    from p in db.Fact_SurveyResults
                    group p by 1 into a
                    select new FactSurveyResultsViewModel { EaseRequestingHelp = a.Average(p.EaseRequestingHelp)};
            }
            return result;
        }
    }
}

谁能指出我检索一个属性并将其作为缩进 JSON 从我的控制器访问,以便我可以使用它,然后我可以将其复制到其他属性?谢谢。

【问题讨论】:

    标签: c# asp.net-mvc json entity-framework


    【解决方案1】:

    您可以使用 Json.NET 将 .NET 对象序列化为 JSON。它有一个生成缩进 JSON 的格式化选项。

    您可以在 Visual Studio 中通过 NuGet 安装 Json.NET。安装好之后就可以通过JsonConvert.SerializeObject()方法进行序列化了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多