2012-04-18 21 views
5

Có thể sử dụng truy vấn động PetaPoco để trả về Json trong ASP.net WebAPI không?Trả về Json Sử dụng PetaPoco Dynamic & WebAPI

// WebAPI khiển

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; 
    } 

} 

Tôi nhận được một lỗi

Để có XML serializable, loại mà kế thừa từ IEnumerable phải có một thực hiện của chương trình Add (System.Object)

+0

Tôi chưa bao giờ sử dụng PetaPoco, nhưng có bạn đã cố gắng chuyển đổi đối tượng quay trở lại động trường JSONObject hoặc JsonArray? http://goo.gl/BaIx5 – cecilphillip

Trả lời

0

Vì PetaPoco trả về số List<dynamic> câu trả lời thực sự ở đây là "Có thể WebApi trả về một Json từ một Danh sách"?

Câu trả lời là có, nhưng WebApi có một thứ gọi là Content Negotiation so với trả lại Json hoặc XML dựa trên yêu cầu.

Hãy thử đề nghị Json hoặc thử này cho XML:

// Show all Branches 
    return (IEnumerable<dynamic>)db.Query<dynamic>("SELECT * FROM Branches"); 
Các vấn đề liên quan