首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用PetaPoco Dynamic & WebAPI返回Json

使用PetaPoco Dynamic & WebAPI返回Json
EN

Stack Overflow用户
提问于 2012-04-18 17:46:04
回答 2查看 2.4K关注 0票数 5

是否可以使用PetaPoco动态查询在ASP.net WebAPI中返回Json?

//WebAPI控制器

代码语言:javascript
复制
public class BranchController : ApiController
{
    public IEnumerable<dynamic> Get()
    {
        // Create a PetaPoco database object
        var db = new PetaPoco.Database("DefaultConnection");

        // Show all Branches
        var b = db.Query<dynamic>("SELECT * FROM Branches").ToList();

        return b;
    }

}

我收到一个错误

要使XML可序列化,从IEnumerable继承的类型必须具有Add(System.Object)的实现。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-19 18:11:14

JSON.Net不加限制地处理这个问题,所以我不得不添加一个自定义格式化程序。

这是我用来解决这个问题的MSDN文章:http://code.msdn.microsoft.com/Using-JSONNET-with-ASPNET-b2423706

票数 2
EN

Stack Overflow用户

发布于 2012-04-19 14:46:22

由于PetaPoco返回一个List<dynamic>,这里的真正答案是“WebApi是否可以从列表中返回Json”

答案是肯定的,但是WebApi有一个叫做内容协商的东西,而不是根据请求返回Json或XML。

尝试请求Json或对XML进行以下尝试:

代码语言:javascript
复制
    // Show all Branches
    return (IEnumerable<dynamic>)db.Query<dynamic>("SELECT * FROM Branches");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10214969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档